Write object-oriented code that’s manageable, maintainable, and future-proof.
Inside Simple Object Oriented Design
you’ll discover insightful principles for reducing complexity in your object-oriented code, including:
Simple Object Oriented Design: A guide to creating clean, maintainable code
- Designing classes that are always in consistent states
- Creating abstractions that make it easy to extend software in highly flexible ways
- Lessening the impact of coupling on your codebase
- Modeling class designs that abstract away infrastructure details and use your infrastructure to its maximum capacity
- Reducing the complexity of your code
is a comprehensive handbook of design practices, principles, and patterns that help simplify object-oriented software. The book is aimed at the working developer. There’s no perfection-chasing classroom theory that fails in practice—you’ll master “good enough” techniques that are effective in real-world environments.
about the technology
As your software grows and expands, every new feature and functionality potentially adds complexity to your codebase. The result? Bugs, crashes, and too much time spent detangling incomprehensible legacy code. Properly applied design principles help you ensure your applications are easy to manage for the long term.
about the book
Simple Object Oriented Design
is full of techniques to keep your object-oriented code simple even as your applications evolve and grow. Each principle in this book has been tested and proven in author Mauricio Aniche’s 20-year career in software development. You’ll learn what constitutes both good and bad object-oriented software design, and how to manage dependency, modules, and other features that give rise to complexity. Discover how to make better trade-offs in design decisions, and when to embrace complexity over simpler data structures. With this book as your vital reference, you’ll be ready to write code that’s flexible for the future without slowing feature delivery to a crawl.
about the reader
For readers who know an object-oriented language. This book’s Java examples are easy to understand for any developer.
about the author
Dr. Maurício Aniche
's life's mission is to make software engineers better at what they do. He is a tech lead at Adyen and an Assistant Professor in Software Engineering at Delft University of Technology. Maurício is the author of Effective Software Testing: A Developer's Guide published in 2022, by Manning, a book that’s already adopted by universities throughout the world.