BLGM's mission is to promote a love of books and reading to all by offering advice and information needed to help our visitors to find their next favorite book.

Best Software Design Books: The Ultimate List

There are countless Software Design courses, tutorials, articles available online, but for some, having a book is still a necessity to learn. This is an up-to-date list of recommended books.

1. Clean Architecture: A Craftsman’s Guide to Software Structure and Design (Robert C. Martin Series) (2017)

Best Software Design Books: The Ultimate List  By applying universal rules of software architecture, you can dramatically improve developer productivity throughout the life of any software system. Now, building upon the success of his best-selling books Clean Code and The Clean Coder, legendary software craftsman Robert C. Martin (“Uncle Bob”) reveals those rules and helps you apply them.   Martin’s doesn’t merely present options. Drawing on over a half-century of experience in software environments of every imaginable type, Martin tells you what choices to make…
Author(s): Robert C. Martin

2. A Philosophy of Software Design (2018)

Best Software Design Books: The Ultimate ListThis book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process, and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large…
Author(s): John Ousterhout

3. Design It!: From Programmer to Software Architect (The Pragmatic Programmers) (2017)

Best Software Design Books: The Ultimate ListDon’t engineer by coincidence-design it like you mean it! Filled with practical techniques, Design It! is the perfect introduction to software architecture for programmers who are ready to grow their design skills. Lead your team as a software architect, ask the right stakeholders the right questions, explore design options, and help your team implement a system that promotes the right -ilities. Share your design decisions, facilitate collaborative design workshops that are fast, effective, and fun-and develop more awesome software!With dozens of design methods, examples, and…
Author(s): Michael Keeling

4. Head First Design Patterns: A Brain-Friendly Guide (2004)

Best Software Design Books: The Ultimate ListAt any given moment, someone struggles with the same software design problems you have. And, chances are, someone else has already solved your problem. This edition of Head First Design Patterns—now updated for Java 8—shows you the tried-and-true, road-tested patterns used by developers to create functional, elegant, reusable, and flexible software. By the time you finish this book, you’ll be able to take advantage of the best design practices and experiences of those who have fought the beast of software design and triumphed. We think your time is too valuable to spend struggling with new concepts. Using the latest…
Author(s): Eric Freeman , Bert Bates , et al.

5. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems (2017)

Best Software Design Books: The Ultimate ListData is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, we have an overwhelming variety of tools, including relational databases, NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords?In this practical and comprehensive guide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various…
Author(s): Martin Kleppmann

6. Timeless Laws of Software Development (2017)

Best Software Design Books: The Ultimate ListIf you want to write high-quality, maintainable code, this book is for you.Most software projects have dreadful quality! Quality code requires more than good intentions and wishful thinking. This book clearly explains the fundamental laws and practices that you need, but probably didn’t learn in school. No matter what your role or experience level, Timeless Laws will change your view of software development forever. #388,633 in Books (See Top 100 in Books) #897 in Software Development (Books) #217 in Computer Systems Analysis & Design (Books) Would you…
Author(s): Jerry Fitzpatrick, Jennifer Kohnke

7. Clean Code: A Handbook of Agile Software Craftsmanship (2008)

Best Software Design Books: The Ultimate ListEven bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way. Noted software expert Robert C. Martin presents a revolutionary paradigm with . Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code “on the fly” into a book that will instill within you the values of a software craftsman and make you a…
Author(s): Robert C. Martin

8. How to Design Programs: An Introduction to Programming and Computing (The MIT Press) (2018)

Best Software Design Books: The Ultimate ListThis introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching…
Author(s): Matthias Felleisen , Robert Bruce Findler, et al.

9. Plan Graphics for the Landscape Designer with Section-Elevation and Computer Graphics (2002)

Best Software Design Books: The Ultimate ListThis book describes how to create a residential landscape plan drawing for presentation. Clearly written and highly illustrative, it takes advantage of tips and techniques that many designers have learned over the years. It serves as a resource for ideas, illustrates the use of symbols and textures, and also includes a section on the use of computer software in landscape drawing. Topics include presentation graphics, tools for accurate plan drawing, line drawing, good lettering, symbol drawing and symbol category descriptions, defining the ground plane (turf, hardscapes, mulch, and groundcover),…
Author(s): Tony Bertauski

10. Java Software Solutions: Foundations of Program Design (2011)

Best Software Design Books: The Ultimate ListJava Software Solutions teaches a foundation of programming techniques to foster well-designed object-oriented software. Heralded for its integration of small and large realistic examples, this worldwide best-selling text emphasizes building solid problem-solving and design skills to write high-quality programs. MyProgrammingLab, Pearson’s new online homework and assessment tool, is available with this edition. Subscriptions to MyProgrammingLab are available to purchase online or packaged with your textbook (unique ISBN). Use the following ISBNs to purchase MyProgrammingLab:Java Software Solutions:…
Author(s): John Lewis, William Loftus

Best Software Design Books: The Ultimate List

We highly recommend you to buy all paper or e-books in a legal way, for example, on Amazon. But sometimes it might be a need to dig deeper beyond the shiny book cover. Before making a purchase, you can visit resources like Genesis and download some software design books mentioned below at your own risk. Once again, we do not host any illegal or copyrighted files, but simply give our visitors a choice and hope they will make a wise decision.

Software Design for Resilient Computer Systems

Author(s): Igor Schagaev, Eugene Zouev, Kaegi Thomas
Publisher: Springer International Publishing, Year: 2020, Size: 11 Mb, Download: pdf
ID: 2408678

Semantic Software Design: A New Theory and Practical Guide for Modern Architects

Author(s): Eben Hewitt
Publisher: O’Reilly Media, Inc., Year: 2020, Size: 2 Mb, Download: epub
ID: 2419720

Cloud Native Patterns: Designing change-tolerant software

Author(s): Cornelia Davis
Publisher: Manning Publications Co, Year: 2019, Size: 9 Mb, Download: pdf
ID: 2373573

Introduction to Software Design with Java

Author(s): Martin P. Robillard
Publisher: Springer, Year: 2019, Size: 6 Mb, Download: pdf
ID: 2388663

Design Patterns in .NET: Reusable Approaches in C# and F# for Object-Oriented Software Design

Author(s): Dmitri Nesteruk
Publisher: Apress, Year: 2019, Size: 3 Mb, Download: pdf
ID: 2406595

Business Modeling and Software Design: 9th International Symposium, BMSD 2019, Lisbon, Portugal, July 1–3, 2019, Proceedings

Author(s): Boris Shishkov
Publisher: Springer International Publishing, Year: 2019, Size: 25 Mb, Download: pdf
ID: 2408956

Design Patterns in Modern C++. Reusable Approaches for Object-oriented Software Design

Author(s): Dmitri Nesteruk
Publisher: Apress, Year: 2018, Size: 2 Mb, Download: pdf
ID: 2211389

Design Patterns in Modern C++: Reusable Approaches for Object-Oriented Software Design

Author(s): Dmitri Nesteruk
Publisher: Apress, Year: 2018, Size: 420 Kb, Download: epub
ID: 2213507

Release It!: Design and Deploy Production-Ready Software

Author(s): Michael T. Nygard
Publisher: Pragmatic Bookshelf, Year: 2018, Size: 5 Mb, Download: pdf
ID: 2214355

Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis

Author(s): Adam Tornhill
Publisher: Pragmatic Bookshelf, Year: 2018, Size: 10 Mb, Download: pdf
ID: 2229033

Please note that this booklist is not definite. Some books are absolutely record-breakers according to Los Angeles Times, others are written by unknown writers. On top of that, you can always find additional tutorials and courses on Coursera, Udemy or edX, for example. Are there any other relevant links you could recommend? Leave a comment if you have any feedback on the list.

Affiliate Disclaimer: We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
Leave a Reply