Home Page Icon
Home Page
Table of Contents for
Practices of the Python Pro
Close
Practices of the Python Pro
by Dane Hillard
Practices of the Python Pro
Copyright
Brief Table of Contents
Table of Contents
Preface
Acknowledgments
About this book
About the Author
About the cover illustration
Part 1. Why it all matters
Chapter 1. The bigger picture
1.1. Python is an enterprise language
1.2. Python is a teaching language
1.3. Design is a process
1.4. Design enables better software
1.5. When to invest in design
1.6. New beginnings
1.7. Design is democratic
1.8. How to use this book
Summary
Part 2. Foundations of design
Chapter 2. Separation of concerns
2.1. Namespacing
2.2. The hierarchy of separation in Python
Summary
Chapter 3. Abstraction and encapsulation
3.1. What is abstraction?
3.2. Encapsulation
3.3. Try it out
3.4. Programming styles are an abstraction too
3.5. Typing, inheritance, and polymorphism
3.6. Recognizing the wrong abstraction
Summary
Chapter 4. Designing for high performance
4.1. Hurtling through time and space
4.2. Performance and data types
4.3. Make it work, make it right, make it fast
4.4. Tools
4.5. Try it out
Summary
Chapter 5. Testing your software
5.1. What is software testing?
5.2. Functional testing approaches
5.3. Statements of fact
5.4. Unit testing with unittest
5.5. Testing with pytest
5.6. Beyond functional testing
5.7. Test-driven development: A primer
Summary
Part 3. Nailing down large systems
Chapter 6. Separation of concerns in practice
6.1. A command-line bookmarking application
6.2. A tour of Bark
6.3. An initial code structure, by concern
Summary
Chapter 7. Extensibility and flexibility
7.1. What is extensible code?
7.2. Solutions for rigidity
7.3. An exercise in extension
Summary
Chapter 8. The rules (and exceptions) of inheritance
8.1. The inheritance of programming past
8.2. The inheritance of programming present
8.3. Inheritance in Python
8.4. Inheritance and composition in Bark
Summary
Chapter 9. Keeping things lightweight
9.1. How big should my class/function/module be?
9.2. Breaking down complexity
9.3. Decomposing classes
Summary
Chapter 10. Achieving loose coupling
10.1. Defining coupling
10.2. Recognizing coupling
10.3. Coupling in Bark
10.4. Addressing coupling
Summary
Part 4. What’s next?
Chapter 11. Onward and upward
11.1. What now?
11.2. Design patterns
11.3. Distributed systems
11.4. Take a Python deep dive
11.5. Where you’ve been
Summary
Appendix Installing Python
A.1 What version of Python should I use?
A.2 The “system” Python
A.3 Installing other versions of Python
A.4 Verifying the installation
Index
List of Figures
List of Listings
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Cover
Next
Next Chapter
Copyright
Practices of the Python Pro
Dane Hillard
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset