null
Loading…
Skip to main content

Holiday gifts by Fri, Dec 18? Order by Fri, Dec 4. Plan gifts

Free shipping works great on most orders over $95 in the contiguous US

Specialists Mon–Fri, 8:30 am–5 pm PTSpecialists Mon–Fri, 8:30–5 PT866-522-6657

Software Design for Python Programmers: Principles and patterns book cover by Ronald Mak
Paperback

Software Design for Python Programmers: Principles and patterns

by Ronald Mak

$50.99 / copy at 25+ copies As low as $47.99 at 1,000+Your best volume price

Paperback · 456 pages Manning · 2026

Format

Paperback
Volume pricing

The more copies, the less each one costs

Applied automatically in your cart. No code needed.

More than a box of books

Turn this order into a program

Groups that order in bulk often pair the copies with something more. We handle the extras so you don't have to.

About the book

Software Design for Python Programmers

Get a free eBook (PDF or ePub) from Manning as well as access to the online liveBook format (and its AI assistant that will answer your questions in any language) when you purchase the print book.

This book shows you how to level up from writing Python code to designing Python applications. Following intuitive “before” and “after” examples of improved code, you’ll learn to plan and execute Python applications effectively and avoid bugs associated with unmanaged state, poorly-formed classes, inflexible functions, and more.

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.

In Software Design for Python Programmers, you’ll learn to:
  • Analyze requirements and plan application architecture
  • Evolve designs through iterative development
  • Shape Python classes with high cohesion and loose coupling
  • Use decorators to introduce abstraction, enforce constraints, and enrich behavior
  • Apply industry-standard design principles to keep code modular and maintainable
  • Choose and implement the right design patterns for complex challenges
About the Technology

Great software starts with thoughtful design. You’ll be a more effective developer if you can decide how data will

flow through your applications, create a winning software architecture, and structure functions, classes, and modules before you write a line of code. This book will get you started!

About the Book

Software Design for Python Programmers is a practical guide for creating maintainable, well-structured software in Python. By investigating clear “before and after” examples, you’ll discover how even small design choices can have a huge impact on an application’s clarity and reliability. As you go, you’ll learn how to gather requirements, shape a program’s architecture iteratively, create clean and reusable abstractions, and select design patterns that solve the real problems you’ll face on the job.

What’s Inside
  • Turn vague requirements into solid designs
  • Python-specific software design techniques
  • Create classes with high cohesion and loose coupling
About the Readers

For programmers comfortable with Python syntax.

About the Author

Ronald Mak is a former NASA senior scientist. Currently, he teaches data science and computer science at San Jose State University. He is the author of Object-Oriented Software Design in C++.

Table of Contents

Part 1
1 The path to well-designed software
2 Iterate to achieve good design
Part 2
3 Get requirements to build the right application
4 Good class design to build the application right
Part 3
5 Hide class implementations
6 Don’t surprise your users
7 Design subclasses right
Part 4
8 The Template Method and Strategy Design Patterns
9 The Factory Method and Abstract Factory Design Patterns
10 The Adapter and Façade Design Patterns
11 The Iterator and Visitor Design Patterns
12 The Observer Design Pattern
13 The State Design Pattern
14 The Singleton, Composite, and Decorator Design Patterns
Part 5
15 Designing solutions with recursion and backtracking
16 Designing multithreaded programs

The book, Software Design for Python Programmers: Principles and patterns [Bulk, Wholesale, Quantity] ISBN#9781633439498 in Paperback by Ronald Mak may be ordered in bulk quantities. Minimum starts at 25 copies. Availability based on publisher status and quantity being ordered.

Details

Publisher
Manning
Author
Ronald Mak
Format
Paperback
Published
Feb 17, 2026
ISBN-13
9781633439498
ISBN-10
1633439496
Pages
456
Buying for a group

Software Design for Python Programmers in bulk: pricing

Volume pricing applies automatically in your cart. No codes, no account needed.

CopiesPrice per copyYou save
25 – 99 $50.99 15% off list
100 – 249 $50.39 16% off list
250 – 499 $49.79 17% off list
500 – 999 $49.19 18% off list
1,000+ $47.99 20% off list
Ways groups use it

Popular for

1
Book clubs

A copy for every member, on one order.

2
Events and conferences

A book for every attendee, delivered to your venue.

3
Gifts

For clients, staff, members or volunteers.

How fast can I get copies of Software Design for Python Programmers?

Need them by a specific date? Request a quote and we'll confirm timing before you pay.

Can you ship to several locations or people's homes?

Yes. We ship in bulk to one address, to multiple sites, or to individual recipients, in the US and internationally. See fulfillment options.

Can I get a formal quote for approval before ordering?

Yes. Request a quote and we'll send a PDF you can forward for approval.

Do you accept purchase orders and tax-exempt orders?

Yes. We accept purchase orders upon approval, as well as cards, PayPal, ACH, wire transfers and checks. BookPal is a tax-exempt supplier in all 50 states. See purchase orders and sales tax exemption.

What if I find a lower price?

Send us the link. We match prices from other bulk booksellers and distributors on a new copy in the same edition, available to ship in the quantity you need. Clearance sales and pricing errors are the exception, and we'll tell you quickly if that's the case. Start a price match.

Customer reviews

What buyers say

Be the first to review
Send for approval

Get a yes from your approver

Software Design for Python Programmers: Principles and patterns
Email it to my approver

Your approver gets a link to this page with the quantity set and an "Approve and order" button. Nothing is sent until you press send in your email app.

Log In
Review Your Cart
Your cart is empty Your cart is empty Your cart is empty

Menu

Recently Viewed Recently Viewed
Back to top Back to top