Home Page

Refactoring by Martin Fowler

Amazon Affiliate link
Amazon raw link

Martin Fowler’s Refactoring: Improving the Design of Existing Code is more heavy focused on object oriented programming than will typically be useful for a Python codebase, but it is still valuable for its practical approach to code. Instead of comparing grand high-level architectures, its habit is to explain a pattern by starting down in the weeds of a tangled example and then finding an incremental way forward that keeps the code running while making stepwise improvements to its organization.

The The Null Object Pattern is the only one to which this Python Patterns site so far makes reference, but the book can still be recommended as a solid classic that has helped many readers get traction with an existing codebase and develop habits that makes even their own code easier to maintain and understand.