The primary focus of architecture is to to support the life cycle of the system. Good architecture makes the system easy to understand, develop, maintain and deploy. The ultimate goal is to minimize cost and maximise developer productivity. – Robert C. Martin
Who should read this book?
Software architects and developers are the ones who are going to get the most out of this book. You don’t need to know a particular programming language because the book is agnostic in this regard. You will need 2-3 years of experience writing code. It will help you relate to the problems of bad code / bad architecture because you encountered them in real life.
The main goal of the book is to show us what bad code looks like and then to teach us how we can avoid writing rigid and fragile programs by applying some basic principles. Although it has about 370 pages, it is very concise and covers a lot of ground. You will learn about:
- Programming paradigms
- SOLID principles (from an OO and architectural perspective)
- Ways to structure and package your applications
- Where to draw boundaries between your components
- Why databases, frameworks and user interfaces are just details in a good architecture
Software architecture may seem very abstract at times. So you might think that this book is academic and difficult to read. No true. If you ever read Uncle Bob’s books before you know that I speak the truth. I find Clean Architecture to be easy to read, even enjoyable. There are also plenty of examples to help the reader grasp more complex topics.
After reading this book, I certainly look differently at some of my recent applications. I know what I did right and I know what I need to improve to make them more maintainable and easy to change. That is why I highly recommend Clean Architecture.
Small tip: Uncle Bob is also a good speaker. He has some videos on YouTube on good architecture. After you read Clean Architecture, I encourage you to check them out because they will cement all the information in the book 😉