ManningBooks

ManningBooks

Devtalk Sponsor

Software Design for Python Programmers (Manning)

Great applications take advantage of established design principles and patterns that maximize performance, maintainability, and reliability. This book helps you master the “Pythonic” approach to architectural principles, such as encapsulation, abstraction, method variation, and more. The examples are in Python, but the techniques will apply to any object-oriented language.

Ronald Mak

Writing Python is one skill. Designing Python software is another.

Software Design for Python Programmers is now available, and it focuses on the decisions that shape how your code behaves as systems grow: how responsibilities are divided, how state is managed, and how small structural choices compound over time.

The book uses clear before-and-after examples to show how designs improve. You see how a piece of code starts, where it struggles, and what changes make it easier to extend, test, and reason about. Instead of presenting abstract rules, the material stays anchored in working Python.

Inside, the author walks through topics that working developers wrestle with:

• Turning requirements into an application structure
• Evolving designs through iteration rather than rigid upfront plans
• Building classes with strong cohesion and minimal coupling
• Using decorators to control behavior and enforce constraints
• Applying design principles that keep modules flexible
• Choosing patterns that solve actual design problems

There’s also a strong emphasis on common failure points in Python projects — unmanaged state, brittle class hierarchies, functions that quietly accumulate responsibilities — and how thoughtful design prevents those issues from appearing in the first place.

Although the examples are written in Python, the ideas carry across languages. The core theme is learning to think about software structure deliberately, not just line-by-line implementation.


Don’t forget you can get 45% off with your Devtalk discount! Just use the coupon code “devtalk.com” at checkout :+1:

Where Next?

Popular General Dev topics Top

PragmaticBookshelf
Learn from the award-winning programming series that inspired the Elixir language, and go on a step-by-step journey through the most impo...
New
PragmaticBookshelf
Management is ready to disband your new agile team and outsource your project. Can you save The Dream Team? Portia Tung edited by L...
New
PragmaticBookshelf
Build your own languages with ANTLR v4, using ANTLR’s new advanced parsing technology. In this book, you’ll learn how ANTLR automatically...
New
PragmaticBookshelf
Find out how the Swedish police combined XP, Scrum, and Kanban in a 60-person project. From start to finish, you’ll see how to deliver a ...
New
PragmaticBookshelf
Programming at industry level requires new skills—you’ll build programs that dwarf anything you’ve done on your own. This book introduces...
New
PragmaticBookshelf
Project retrospectives help teams examine what went right and what went wrong on a project. But traditionally, retrospectives (also known...
New
PragmaticBookshelf
You can learn to be a better manager—even a great manager—with this guide. You’ll follow along as Sam, a manager just brought on board, l...
New
PragmaticBookshelf
Go beyond mere project management and improve teamwork, communication, and predictability in open source development. Make meetings and s...
New
PragmaticBookshelf
In the beginning was the chip . . . _Charged Bodies_ chronicles the rise of Silicon Valley via the voices of those who shaped it and thos...
New
PragmaticBookshelf
Learn to recognize, analyze, and fix the causes of stress in your teams, reducing burnout and increasing both happiness and productivity....
New

Other popular topics Top

AstonJ
We have a thread about the keyboards we have, but what about nice keyboards we come across that we want? If you have seen any that look n...
New
AstonJ
In case anyone else is wondering why Ruby 3 doesn’t show when you do asdf list-all ruby :man_facepalming: do this first: asdf plugin-upd...
New
New
AstonJ
Saw this on TikTok of all places! :lol: Anyone heard of them before? Lite:
New
mafinar
This is going to be a long an frequently posted thread. While talking to a friend of mine who has taken data structure and algorithm cou...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
First poster: bot
zig/http.zig at 7cf2cbb33ef34c1d211135f56d30fe23b6cacd42 · ziglang/zig. General-purpose programming language and toolchain for maintaini...
New
First poster: AstonJ
Jan | Rethink the Computer. Jan turns your computer into an AI machine by running LLMs locally on your computer. It’s a privacy-focus, l...
New
PragmaticBookshelf
A concise guide to MySQL 9 database administration, covering fundamental concepts, techniques, and best practices. Neil Smyth MySQL...
New
mindriot
Ok, well here are some thoughts and opinions on some of the ergonomic keyboards I have, I guess like mini review of each that I use enoug...
New