Concepts of Great Software Design
eBook - ePub

Concepts of Great Software Design

A Practical Approach to Clean, Scalable, and Maintainable Software Architectures

  1. English
  2. ePUB (mobile friendly)
  3. Available on iOS & Android
eBook - ePub

Concepts of Great Software Design

A Practical Approach to Clean, Scalable, and Maintainable Software Architectures

About this book

Software does not get hard because it is large. It gets hard because nobody can predict what will break.

Most books on software design hand you patterns and principles, then leave you to guess which one applies to the code in front of you. This book treats complexity as a measurable cost and attacks it at the design level. You will learn to identify the concept a module is really about, hide the decisions that should never leak, and judge an interface by how much work it hides rather than how many methods it exposes.

Each idea arrives with a short before-and-after and the specific change it makes cheaper. Error-handling chapters show how to define special cases out of existence instead of propagating them upward. Later chapters cover layering and dependency direction, domain modeling, APIs that survive their second version, and testing used as design feedback rather than proof. The goal is not clever code. The goal is code that stays cheap to change.

What you will learn:

• Recognize the forms of complexity that make software hard to change
• Treat concepts, not files or functions, as the unit of design
• Use abstraction, interfaces, and information hiding to contain decisions
• Evaluate module depth, coupling, and cohesion as design signals
• Write names, comments, and documentation that carry design intent
• Design it twice: compare alternatives before committing to an interface
• Define error cases out of existence and place defensive boundaries correctly
• Direct dependencies with layering and inversion of control
• Shape domain models, data, and APIs that age well across versions
• Use testing and refactoring as feedback for strategic design investment

For working developers, tech leads, and computer science students moving beyond syntax. If you can write code that runs but want to understand why some codebases stay easy to work in and others do not, this book gives you the concepts and the concrete changes to get there.

Information

Year
2026
eBook ISBN
9798259675506

Table of contents

  1. Foreword
  2. Preface
  3. About This Book
  4. Chapter 1: Complexity: What Makes Software Hard to Change
  5. Chapter 2: Concepts as the Unit of Design
  6. Chapter 3: Abstraction, Interfaces and Information Hiding
  7. Chapter 4: Module Depth, Coupling and Cohesion
  8. Chapter 5: Naming, Comments and Design Documentation
  9. Chapter 6: Designing It Twice: Alternatives Before Commitment
  10. Chapter 7: Errors, Failure Modes and Defensive Boundaries
  11. Chapter 8: Layering, Dependencies and Inversion of Control
  12. Chapter 9: Domain Models and Data Design
  13. Chapter 10: API and Library Design That Ages Well
  14. Chapter 11: Testing, Contracts and Design Feedback
  15. Chapter 12: Refactoring, Technical Debt and Strategic Investment
  16. Conclusion
  17. Acknowledgements
  18. Glossary
  19. Sources and Further Reading
  20. About the Author
  21. A Request from the Author

Trusted by 375,005 students

Access to over 1.5 million titles for a fair monthly price.

Study more efficiently using our study tools.

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn how to download books offline
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.5M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1.5 million books across 990+ topics, we’ve got you covered! Learn about our mission
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more about Read Aloud
Yes! You can use the Perlego app on both iOS and Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app
Yes, you can access Concepts of Great Software Design by Emil Vondracek, Artificial intelligence in PDF and/or ePUB format, as well as other popular books in Computer Science & Computer Engineering. We have over 1.5 million books available in our catalogue for you to explore.