Clean Architecture
Robert C. Martin
- Topic
- Technology
- Status
- Read
- Score
- Great8.9
Dependency rules that keep the core of a system independent of frameworks and the database.
My review
Clean Architecture is my favourite architecture pattern, and this book is a big part of the reason. When I read it, I was already working on large systems, but I still made a lot of structural decisions out of habit. The book gave me the language for things I felt but couldn't explain.
The Dependency Rule is at the centre of everything: the code on the inside knows nothing about the code on the outside. Business rules don't know that a database, a framework or a screen exists. It sounds simple, but when you really apply it, the system looks completely different. The database becomes a detail, the framework becomes a detail, and swapping a piece stops being a three-month project.
I also really like the section on component principles and how he takes SOLID to a larger scale. The idea of an architecture that screams its domain rather than its framework strikes me as extremely elegant.
The book sometimes sells the architecture as if the cost were always low. It isn't. In a small system or an MVP on a tight deadline, too many layers turn into ceremony. Uncle Bob talks about trade-offs, but the hasty reader doesn't hear it.
I highly recommend it to anyone who wants to stop being a junior and start understanding systems architecture. For seniors, it's worth rereading every so often to remember why the rules exist.