From Simple Object Oriented Design by Mauricio Aniche

This book is a guide to creating clean, maintainable code and a comprehensive handbook of design practices, principles, & patterns that help simplify object-oriented software.


Are you struggling with the complexity of your software systems? Simple Object Oriented Design is the perfect guide for you. Written by Maurício Aniche, this comprehensive book covers OO design practices, principles, and patterns to help developers reduce or manage the complexity of their systems.

In this book, you’ll learn about pragmatic design principles that will help you keep the overall complexity of your design under control. With six dedicated chapters, each covering a different type of complexity, you’ll gain a deeper understanding of code complexity, keeping objects consistent, managing dependencies, creating good abstractions, achieving modularization, and handling infrastructure.

In short, you’ll learn:

  1. Different design principles and patterns that’ll help developers in reducing the complexity of their object-oriented software systems.
  2. How to design classes that are always in consistent states, avoiding bugs and facilitating reuse.
  3. How to create abstractions that enable developers to extend their software systems in a highly flexible way, and without complex code structures.
  4. A profound understanding of coupling in object-oriented systems, and how to reduce their impact on the code base.
  5. How to create class designs that abstracts away infrastructure details, but at the same time, understand the infrastructure behind the scenes and use it to their maximum capacity.

If you’re already familiar with OO best practices, you’ll recognize the influence of Robert Martin, Eric Evans, Grady Booth, Steve Freeman, and Nat Pryce in Aniche’s work. However, he also offers his own pragmatic twist to their ideas, making this book a unique and valuable resource for any developer.

And the best part? This is still the early version of the book, and Aniche is open to feedback from readers. So, if you have any thoughts or suggestions, don’t hesitate to drop them in the liveBook Discussion forum.

About the reader

For readers who know an object-oriented language. This book’s Java examples are easy to understand for any developer.

Get your copy of Simple Object Oriented Design today and take the first step towards creating maintainable software systems. Happy reading!