Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Follow the authors
OK
Clean Architecture: A Craftsman's Guide to Software Structure and Design (Robert C. Martin Series) 1st Edition
Purchase options and add-ons
Practical Software Architecture Solutions from the Legendary Robert C. Martin (“Uncle Bob”)
By applying universal rules of software architecture, you can dramatically improve developer productivity throughout the life of any software system. Now, building upon the success of his best-selling books Clean Code and The Clean Coder, legendary software craftsman Robert C. Martin (“Uncle Bob”) reveals those rules and helps you apply them.
Martin’s Clean Architecture doesn’t merely present options. Drawing on over a half-century of experience in software environments of every imaginable type, Martin tells you what choices to make and why they are critical to your success. As you’ve come to expect from Uncle Bob, this book is packed with direct, no-nonsense solutions for the real challenges you’ll face–the ones that will make or break your projects.
- Learn what software architects need to achieve–and core disciplines and practices for achieving it
- Master essential software design principles for addressing function, component separation, and data management
- See how programming paradigms impose discipline by restricting what developers can do
- Understand what’s critically important and what’s merely a “detail”
- Implement optimal, high-level structures for web, database, thick-client, console, and embedded applications
- Define appropriate boundaries and layers, and organize components and services
- See why designs and architectures go wrong, and how to prevent (or fix) these failures
Clean Architecture is essential reading for every current or aspiring software architect, systems analyst, system designer, and software manager–and for every programmer who must execute someone else’s designs.
Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
- ISBN-100134494164
- ISBN-13978-0134494166
- Edition1st
- PublisherPearson
- Publication dateSeptember 10, 2017
- LanguageEnglish
- Dimensions0.8 x 6.9 x 9 inches
- Print length432 pages
Frequently bought together

More items to explore
The goal of software architecture is to minimize the human resources required to build and maintain the required system.Highlighted by 3,341 Kindle readers
Structured programming imposes discipline on direct transfer of control.Highlighted by 2,297 Kindle readers
Object-oriented programming imposes discipline on indirect transfer of control.Highlighted by 2,238 Kindle readers
From the brand
From the Publisher
From the Preface of "Clean Architecture"
“…The rules of software architecture are the rules of ordering and assembling the building blocks of programs. And since those building blocks are universal and haven’t changed, the rules for ordering them are likewise universal and changeless.
But one thing has changed: Back then, we didn’t know what the rules were. Consequently, we broke them, over and over again. Now, with half a century of experience behind us, we have a grasp of those rules.
And it is those rules—those timeless, changeless, rules—that this book is all about.”
— Robert C. "Uncle Bob" Martin
|
|
|
|
|
|
|---|---|---|---|---|---|
| Clean Code: A Handbook of Agile Software Craftsmanship | The Clean Code: Practical Advices for the Professional Programmer | Clean Craftsmanship: Desciplines, Standards, and Ethics | Clean Agile: Back to Basics | Clean Architecture: A Craftsman's Guide to Software Structure and Design | |
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
|
| Customer Reviews |
4.7 out of 5 stars
6,395
|
4.6 out of 5 stars
2,196
|
4.5 out of 5 stars
183
|
4.7 out of 5 stars
592
|
4.6 out of 5 stars
3,688
|
| Price | $49.99$49.99 | $38.74$38.74 | $38.35$38.35 | $35.16$35.16 | $37.39$37.39 |
| Best agile practices of cleaning code “on the fly” Software Craftsmanship. | Endure and succeed amidst swirling uncertainty and nonstop pressure. | Picks up where Clean Code leaves off, outlining additional ways to write quality and trusted code you can be proud of every day. | A clear and concise guide to basic Agile values and principles. Perfect for those new to Agile methods and long-time developers who want to simplify approaches for the better. | Direct, no-nonsense answers to key architecture and design questions. | |
| "It is the best pragmatic application of Lean principles to software I have ever seen in print." —James O. Coplien, Founder of the Pasteur Organizational Patterns project | “Some technical books inspire and teach; some delight and amuse. Rarely does a technical book do all four of these things.” — George Bullock | ". . . [A] timely and humble reminder of the ever-increasing complexity of our programmatic world and how we owe it to the legacy of humankind--and to ourselves--to practice ethical development.” — Stacia Heimgartner Viscardi, CST & Agile Mentor | “What is in the world of Agile development is nothing compared to what could be. This book is Bob’s perspective on what to focus on to get to that ‘what could be.’ And he’s been there, so it’s worth listening.” — Kent Beck | "A good architecture comes from understanding it more as a journey than as a destination, more as an ongoing process of enquiry than as a frozen artifact." — Kevlin Henney |
Pick Up Where Clean Code Leaves Off
"As software developers, we have to continually solve important problems for our employers, customers, colleagues, and future selves. Getting the app to work, though difficult, is not enough, it does not make you a craftsman. With an app working, you have passed the app-titude test. You may have the aptitude to be a craftsman, but there is more to master. In these pages, Bob expresses clearly the techniques and responsibilities to go beyond the app-titude test and shows the way of the serious software craftsman."
— James Grenning, author of Test-Driven Development for Embedded C and Agile Manifesto co-author
Editorial Reviews
About the Author
Product details
- Publisher : Pearson; 1st edition (September 10, 2017)
- Language : English
- Paperback : 432 pages
- ISBN-10 : 0134494164
- ISBN-13 : 978-0134494166
- Item Weight : 1.63 pounds
- Dimensions : 0.8 x 6.9 x 9 inches
- Best Sellers Rank: #29,939 in Books (See Top 100 in Books)
- #3 in Software Design & Engineering
- #23 in Software Development (Books)
- #88 in Business Technology
- Customer Reviews:
About the authors

Robert Cecil Martin (colloquially known as Uncle Bob) is an American software engineer and author. He is a co-author of the Agile Manifesto.
Bio from Wikipedia, the free encyclopedeia. Photo by Tim-bezhashvyly (Own work) [CC BY-SA 4.0 (http://creativecommons.org/licenses/by-sa/4.0)], via Wikimedia Commons.

I'm an independent consultant, international speaker, writer and trainer. I live in Bristol and online.
My software development interests are in patterns, programming, practice and process. As well as contributing to a number of projects, I've been involved in (far too) many committees (for conferences, publications and standards, but as yet I've not been on a committee for committees).
My fiction writing tends to the short side — and occasionally to the dark side — spanning a number of genres.
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonCustomers say
Customers find the book provides good information about important concepts like SOLID and Component Principles. They appreciate the well-structured, practical approach to software architecture and design. The book is a good read for people interested in software system design and a must-read for any software engineer. Readers appreciate the clean code examples and the assumption of code ownership. The chapters are short, with sections broken up into parts.
AI-generated from the text of customer reviews
Customers find the book provides good information on basic architecture concepts. It explains the details clearly, with practical examples and helpful advice. The book serves as a good introduction to fundamental principles like SOLID and Component Principles.
"...from many sources, then boiling it down to easily and enjoyably absorbable explanations...." Read more
"...The book is partially a very detailed description of the ideas from the article and what is behind them...." Read more
"...of books full of advises, thoughts, ideas, rationales and principles with the same impact...." Read more
"All in all, this was a very interesting read and kept my attention throughout the book...." Read more
Customers find the book's architecture clear and well-structured. They appreciate the practical views on basic and intermediate architectural concepts, as well as the clear materials. The book provides a structured guide for an agile approach to architecture, with useful information about design components.
"...As always I found this one fascinating and well written...." Read more
"...Most memorable chapters for me were the Screaming Architecture and the Clean Architecture...." Read more
"...and review his software development discipline philosophy in a concise and complete harmonious set of essays...." Read more
"...can read it as a newcomer to the field, but the lessons contained will not really sink in until you have a few battle scars in your skin, and you'd..." Read more
Customers find the book helpful for those interested in software design. They say it explains how to build good software, regardless of the tech involved. It provides a review of the software development discipline philosophy in a concise and complete way. The book has changed their approach to software development and created a path through the mess of designing software. Readers appreciate the great concepts about SOLID and code architecture.
"...But the book has the value to reunite and review his software development discipline philosophy in a concise and complete harmonious set of..." Read more
"...This book will change how you create your software and will push up the quality of .your output a couple orders of magnitude...." Read more
"...Unfortunately, no. This book is still worth reading for people interested in software design, I don't believe the impact and role of this book will..." Read more
"...This book helped a lot in how to write good code, in the high flexibility and “stability” perspective...." Read more
Customers like the clean architecture and code in the book.
"...It guarantees independence, reusable, clean architecture. This book explains how and why for this...." Read more
"...Clean architecture was an interesting read. I liked the clean architecture pattern that the author presents and his explanation of it...." Read more
"...A more stable and safer; a cleaner one. Thank you very much for this book, I'm already applying its practical lessons!" Read more
"...you gain an understanding of the principles required to keep your application clean and your development and maintenance costs low." Read more
Customers find the book's chapters short, between 5-15 pages each. They appreciate that it can be written in 100 pages without fluff. The book has six parts, with the introduction and starting with the bricks as the main sections.
"...The book has 6 parts, (1) Introduction, (2) Starting with the Bricks: Programming Paradigms, (3) Design Principles, (4) Component Principles, (5)..." Read more
"I got this book for class and it's really good! The chapters are like 5-15 pages (not 50+ like other programming books) so I can get up to speed..." Read more
"The book is well organised with short chapters. However, a lot of it basic & doesn't seem like it's a book published in 2017!..." Read more
"This book has important concepts developers should know. It can be written in 100 pages without the fluff. This book is full of fluff and repetition." Read more
Customers appreciate the book's code quality. They say it's clean and scalable. The assumption of code ownership and the focus on up-front planning are mentioned as standout features.
"...This book has almost no code in it, so you certainly can read it as a newcomer to the field, but the lessons contained will not really sink in until..." Read more
"...Four points stood out to me, (1) the assumption of code ownership, (2) the focus on up-front structure rather than gradual evolution, (3) the..." Read more
"...book with everything you need to know to make sure that your code is clean and scalable" Read more
Reviews with images
It came quickly, but damaged
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
- Reviewed in the United States on August 18, 2018No doubt that Robert C. Martin is one of the most influential author and software development theorist of our times. The already standard SOLID principles had been with us for decades, serving software discipline with full success. The Clean Series is a set of books full of advises, thoughts, ideas, rationales and principles with the same impact. If you know his videos and lectures, probably this book will see familiar and many of the topics discussed repetitive. But the book has the value to reunite and review his software development discipline philosophy in a concise and complete harmonious set of essays.
The main idea is to avoid dependency applying the Dependency Rule at all levels, classes and components. The Dependency Inversion graph, where high-level functions calling middle-level functions through an interface that the middle-interface implements, is a medular software construction that should be applied as an obsessive pattern. It guarantees independence, reusable, clean architecture. This book explains how and why for this.
The result is the idea of Plugin architecture where the core of the system, the set of functionality that implements the use cases and business rules (interactors (R. C. Martin)/controls (I. Jacobson)/controllers (C. Larman) should be the center at which all other parts (IO components, details) will point via abstractions (interfaces or abstract classes).
I have been practicing clean architecture ideas for many years (and before Martin coined the term) following Martin guidance a principles. Its product is natural, simple, robust, structured, reusable and beautiful to work.
Paradoxically, the last chapter about packaging components--written by S. Brown--seems a contradiction to the whole book ideas and Brown somehow point to that ("My definition of a component is slightly different..."). In that chapter, Brown explains several alternatives for software architecture organization with a marked inclination for a monolithic package that represents the services of the system (and repository interaction) and another that represents the controllers. The reasons of that resultant recommendation (a junior undisciplined programmer that don't follow the cleanliness of the architecture, etc.) are really weak and out of the architect control. His recommendation violates almost all components principles explained by Martin (REP, CCP, CRP, etc.)
I love this book and totally recommend the book for all fans of good, clean architecture.
- Reviewed in the United States on November 1, 2017I liked this book less than the Clean Code, but it was a better read for me than the Clean Coder. I've found a distillation of this book in article from Robert Martin, which he wrote in 2012 while working at 8th Light (I cannot paste a link in here). The book is partially a very detailed description of the ideas from the article and what is behind them.
The book starts with 3 myths we developers live in:
1. Myth: We just need to get to market first and we clean it up later.
2. Myth: Messy code makes us faster today and slows us later. Myth: We can switch mode from making messes to cleaning messes. (making messes is always slower, even in very short term as shown in example of a simple kata in the book)
3. Myth: Starting from scratch is a solution.
There is a well written history lesson in the next part. Uncle Bob presents Structured Programming, OOP and Functional Programming and says there is nothing else (programming paradigm-wise) to be invented. Part 3 is about SOLID principles from architecture point of view and part 4 are his Component Principles about component cohesion and coupling from his Agile Software Development book.
Part 5 is about Architecture and was the most interesting to read. Most memorable chapters for me were the Screaming Architecture and the Clean Architecture. Both of them are not new, you could have seen them in his videos or the article from 8thlight. The point of Screaming Architecture is that when a new developer joins a health-care project, he should be able to immediately tell "this is a health-care project" just from the project structure. Another topic which was part of multiple chapters, are micro-services. I felt that Robert Martin is not very fond of starting with them. He says services are little more than expensive function calls and as a communication mechanism between the project boundaries (i.e. a detail), they are a decision which should be deffered as far as possible.
Part 6, the Details, are a detailed explanations of his article Clean Architecture from 2012. There is a little gem in there, the Missing Chapter 34 written by Simon Brown. I liked his explanation of 4 different kinds of packaging classes together to form components.
- Reviewed in the United States on October 23, 2024It looks like the book was a victim of a razor blade. I'm going to tape it and carry on since I love my books pretty hard anyway, but I'm bummed it has sliced pages. What matters is the information.
4.0 out of 5 stars It came quickly, but damagedIt looks like the book was a victim of a razor blade. I'm going to tape it and carry on since I love my books pretty hard anyway, but I'm bummed it has sliced pages. What matters is the information.
Reviewed in the United States on October 23, 2024
Images in this review
Top reviews from other countries
SiamakReviewed in Canada on December 27, 20245.0 out of 5 stars Great and helpful content
Highly recommended for software engineers and developers, as it offers valuable insights into their career paths
-
Guillermo SotoReviewed in Mexico on September 8, 20245.0 out of 5 stars Excelente
Ya lo tenia en digital y lo adquirí en físico para tenerlo como referencia.
SOUZAReviewed in Brazil on January 24, 20235.0 out of 5 stars Outstanding book
A very good book when you are interested in software architecture. You must have a solid (the joke was not intended here) understanding at least in one traditional OOP programming language such as Java to get through it and deeply understand some of the concepts.
A very good book when you are interested in software architecture. You must have a solid (the joke was not intended here) understanding at least in one traditional OOP programming language such as Java to get through it and deeply understand some of the concepts.5.0 out of 5 stars Outstanding book
SOUZA
Reviewed in Brazil on January 24, 2023
Images in this review
-
AndreaReviewed in Italy on December 5, 20245.0 out of 5 stars Un must
Questo libro è un must per chiunque voglia dedicarsi allo sviluppo di software.
Assolutamente consigliato.
-
Amazon CustomerReviewed in Poland on September 26, 20245.0 out of 5 stars Super książka!
Dobra zawartość, dobrze się czyta. Nic tylko polecać chcącym poszerzać swoją wiedzę.







