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
Mob Programming is a natural extension of the popular Pair Programming concept and is not restricted to a specific programming language o...
New
PragmaticBookshelf
This book is for everyone who needs to test the web. Follow the testing pyramid and level up your skills in user interface testing, integ...
New
PragmaticBookshelf
Cyber-criminals have your web applications in their crosshairs. They exploit common security mistakes in your web application to steal us...
New
PragmaticBookshelf
Teams working on the JVM can now say goodbye forever to misunderstood requirements, tedious manual acceptance tests, and out-of-date docu...
New
PragmaticBookshelf
Small changes to your habits can improve your health—without getting in the way of your work. The Healthy Programmer gives you a daily pl...
New
PragmaticBookshelf
As a techie, you have a tougher time finding and winning the right job. Companies are more demanding. Just like you, your competition is ...
New
PragmaticBookshelf
Your project can’t fail. That’s a lot of pressure on you, and yet you don’t want to buy into any one specific process, methodology, or li...
New
PragmaticBookshelf
Many books and articles have been written describing agile, adaptable approaches to writing software. But somehow, reading about software...
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

Other popular topics Top

PragmaticBookshelf
Andy and Dave wrote this influential, classic book to help their clients create better software and rediscover the joy of coding. Almost ...
New
New
AstonJ
This looks like a stunning keycap set :orange_heart: A LEGENDARY KEYBOARD LIVES ON When you bought an Apple Macintosh computer in the e...
New
Maartz
Hi folks, I don’t know if I saw this here but, here’s a new programming language, called Roc Reminds me a bit of Elm and thus Haskell. ...
New
First poster: bot
zig/http.zig at 7cf2cbb33ef34c1d211135f56d30fe23b6cacd42 · ziglang/zig. General-purpose programming language and toolchain for maintaini...
New
PragmaticBookshelf
Get the comprehensive, insider information you need for Rails 8 with the new edition of this award-winning classic. Sam Ruby @rubys ...
New
NewsBot
Node.js v22.14.0 has been released. Link: Release 2025-02-11, Version 22.14.0 'Jod' (LTS), @aduh95 · nodejs/node · GitHub
New
RobertRichards
Hair Salon Games for Girls Fun Girls Hair Saloon game is mainly developed for kids. This game allows users to select virtual avatars to ...
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