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
Massively successful tech companies — Unicorns — have discovered how to take the techniques that made them successful as a startup and sc...
New
PragmaticBookshelf
No matter what language or platform you’re using, the CLI will help you work more effectively. Turn tedious chores into quick tasks: read...
New
PragmaticBookshelf
Discover how New Zealand’s biggest e-commerce company completely restructured their business through Self-Selection. In the process, find...
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
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
Finding cool languages, tools, or development techniques is easy—new ones are popping up every day. Convincing co-workers to adopt them i...
New
PragmaticBookshelf
Get up to speed on Git right now with Pragmatic Guide to Git. Here you’ll find the 95 percent of Git that you’ll use at least once a week...
New
PragmaticBookshelf
Learn how experienced Scrum masters balance the demands of servant leadership, while removing organizational impediments and helping Scru...
New
PragmaticBookshelf
Become a great manager by leading and serving others. Johanna Rothman @jrothman This work was written and produced entirely by the ...
New
PragmaticBookshelf
Learn to design project lifecycles to create valuable products and a culture of agility. Johanna Rothman @jrothman Do you dread you...
New

Other popular topics Top

PragmaticBookshelf
Instantly view the changes you make to an app with stateful hot reload, and define a declarative UI in the same language as the app logic...
New
PragmaticBookshelf
Andy and Dave wrote this influential, classic book to help their clients create better software and rediscover the joy of coding. Almost ...
New
PragmaticBookshelf
Design and develop sophisticated 2D games that are as much fun to make as they are to play. From particle effects and pathfinding to soci...
New
AstonJ
Just done a fresh install of macOS Big Sur and on installing Erlang I am getting: asdf install erlang 23.1.2 Configure failed. checking ...
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
PragmaticBookshelf
Author Spotlight Mike Riley @mriley This month, we turn the spotlight on Mike Riley, author of Portable Python Projects. Mike’s book ...
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
PragmaticBookshelf
Leverage Elixir and the Nx ecosystem to build intelligent applications that solve real-world problems in computer vision, natural languag...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
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