Goodreads helps you keep track of books you want to read.
Start by marking “Clean Code” as Want to Read:
Clean Code
Enlarge cover
Rate this book
Clear rating
Open Preview

Clean Code

4.39  ·  Rating details ·  10,522 ratings  ·  630 reviews
Selbst schlechter Code kann funktionieren. Aber wenn der Code nicht sauber ist, kann er ein Entwicklungsunternehmen in die Knie zwingen. Jedes Jahr gehen unzählige Stunden und beträchtliche Ressourcen verloren, weil Code schlecht geschrieben ist. Aber das muss nicht sein.

Mit Clean Code präsentiert Ihnen der bekannte Software-Experte Robert C. Martin ein revolutionäres Para
Paperback, 475 pages
Published November 3rd 2009 by mitp (first published January 1st 2007)
More Details... edit details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Clean Code, please sign up.

Be the first to ask a question about Clean Code

This book is not yet featured on Listopia. Add this book to your favorite list »

Community Reviews

Showing 1-30
Rating details
Sort: Default
Oana Sipos
Mar 08, 2015 is currently reading it  ·  review of another edition
These are rather notes than a review while reading:

1. Use very descriptive names. Be consistent with your names.
2. A function should not do more than one thing.
3. SRP (Single Responsibility Principle): a class or module should have one, and only one, reason to change.
4. Stepdown rule: every function should be followed by those at the next level of abstraction (low, intermediate, advanced).
5. A long descriptive name is better than a short enigmatic name. A long descriptive name is better than a
Francis Fish
The first half of this book is well worth a read. Then I was reminded of Martin Fowler's (I think) comment that the original Design Patterns Elements of Reusable Software book was a response to the limitations of C++. It dovetailed so well into Java because Java has a lot of the same annoying limitations, and in some ways is even harder.

The latter section of the book contains some worked examples that I didn't always agree with because they seemed to be totally over done. A lot of the refactorin
Apr 14, 2011 rated it really liked it  ·  review of another edition
Shelves: swe
This book makes some very good points, sometimes taking them to extreme ("Never write functions longer than 15 lines! Never write functions with more than three arguments!"). Some of these points were quite new and useful for me - YMMV. It's too Java-specific in a few places, and reading the last refactoring chapter on a kindle was quite a challenge, but otherwise it was well worth a read. At least I got a clear picture of how I want to refactor a big piece of my current project after reading th ...more
If you are a programmer, you must read it! full of good examples of how to write clean and readable code.
Rod Hilton
There is a movement brewing in the world of professional software development. This movement is concerned not merely with writing functional, correct code, but also on writing good code. Taking pride in code. This movement is the Software Craftsmanship movement, and one of the people near the head of this movement is Robert C. Martin, also known as Uncle Bob.

His book "Clean Code" is, in many ways, an introduction to the concept of Software Craftsmanship and a guide for developers interested in b
Jan 08, 2009 rated it liked it  ·  review of another edition
Shelves: technical
I had a tough time deciding between 3 or 4 stars.

The book should be called Clean Java Code. Some of the concepts definitely translate to other languages, but it uses Java for all of the examples and some of the chapters are dedicated to Java-specific issues.

I consider many of the the suggestions to simply be common sense, but I've worked with enough of "other people's code" to realize they don't necessarily agree. With all of that said, I'd definitely recommend the book to Java developers at th
Oct 03, 2013 rated it liked it  ·  review of another edition
Shelves: computers
Many good points in this book. Unfortunately, almost all of them are overdone. Yes, you should write short functions, if possible. Yes, you should have functions that do one thing.

But no, "one thing" does not mean you should tear an algorithm apart into twenty little funclets that make no sense on their own.

Basically, like another reviewer wrote, the first part of the book raises many good points, and the second part of the book then merrily applies these points way beyond their usefulness. Read
This is a book that one could get started on the idea of "good code" - clean, readable, elegant, simple, easy-to-test, etc. It has the usual stuff that you'd expect - good naming convention, testable code, single responsibility, short classes, short methods - but I feel like it takes them on overdose, going to extremes (IMHO) such as setting short explicit lengths, forbidding certain constructs, and what seems like refactoring for the sake of it.

I'd actually recommend other books like the Pragma
Kosala Nuwan Perera
I had a tough time deciding whether I really liked or It was amazing. I liked the writing style of the book. Its simple, clean, and well crafted.

First few chapters of the book makes good practical advice from naming variables-functions-classes to writing functions to testing. Most of the smells and heuristics I found in these chapters can be found in real-world as well.

Complexity kills. It sucks the life out of developers, it makes products difficult to plan, build, and test. - Ray Ozzie, CTO, M
Erika RS
I wanted to love this book, but instead I just sort of liked it. This book is a member of the extensive genre of books on how to write clean code. It sits alongside books like Code Complete by Steve McConnell[1] and many others. Where Clean Code promised to differentiate itself was in the use of three case studies -- about a third of the book -- showing Martin's code cleanup techniques in action.

However, I was disappointed by that section. As someone who codes and reviews code professionally, t
Craig Vermeer
Jan 04, 2010 rated it it was amazing  ·  review of another edition
Shelves: tech
This had lots of good, practical advice that spanned everything from naming to testing to concurrency. A lot of it was pretty Java centric, so I skimmed a few sections.

By far the best portions of the book were the ones where the author demonstrates -- step by step -- his process for writing code test-first, as well as refactoring.

If you get frustrated with either of the two at times, these parts of the book are *fantastic*, because you see that even someone who's been coding for 40+ years (like
Babak Ghadiri
به نظرم این کتاب برای برنامهنویسان تازه کار خوبه. خیلی از چیزهایی که توش گفته شده رو به شکل تجربی میشه بهشون رسید. من یه فصلش رو که توش یک تکه کد رو ریفکتور میکرد رو چاپ کردم که خط به خط و با دقت بخونم، ببینم زمان ریفکتور چی تو ذهنش میگذره. بعد دیدم چیز خیلی عجیبی نبود و من هم اگه بودم شبیه همین کارها رو میکردم. کلا هم فصل آخرش
(Smells and Heuristics)
رو بخونید خوبه.
به نظرم کتاب ریفکتورینگ آقای فاولر خیلی کتاب باارزشتریه در این زمینه
Alex Ott
Mar 12, 2011 rated it liked it  ·  review of another edition
Shelves: programming
Nothing new for experienced developer...
Too Java oriented in many places. Code Complete, 2ed is better from my point of view
Yevgeniy Brikman
A good book to read for any coder - perhaps not as thorough as Code Complete but much more effective than Pragmatic Programmer.

This book's biggest strength is that it includes tons of code examples, including some fairly long and in depth ones. Instead of just listing rules or principles of clean code, many of the chapters go through these code examples and iteratively improve them. The rules and principles fall out of this process and the reader is a part of developing them, which is an effect
Erkan Erol
Mar 01, 2017 rated it really liked it  ·  review of another edition
Writing clean code is what you must do in order to call yourself a professional. There is no reasonable excuse for doing anything less than your best.
“Honesty in small things is not a small thing.”
In code, refactor mercilessly.
The French poet Paul Valery advises us that a poem is never done and bears continual rework, and to stop working on it is abandonment.
Learning to write clean code is hard work. It requires more than just the knowledge of principles and patterns. You must sweat
Nick Hodges
Apr 02, 2015 rated it really liked it  ·  review of another edition
I hate to say this, but I wasn't as impressed with this book as I thought I should have been, given its place in the pantheon of programming books.

The first half was excellent, but the second half left me a bit cold. It was too Java-y, and had -- dare I say it -- too much code in it.

However, I still list this as a must read for all developers.
Jul 26, 2013 rated it really liked it  ·  review of another edition
I should have read this book at the beginning of my career. On the other hand, after 10 years experience I may appreciate it even more. It is sad, that principles described in the book are not yet heavily adopted.
Definitely worth a read ... :-)
Nov 22, 2009 rated it it was amazing  ·  review of another edition
This book is #1 on my list of books I'd recommend to other programmers. I don't know how else to elaborate on how important I think the ideas in this book are.
Stefan Kanev
May 28, 2010 rated it really liked it  ·  review of another edition
It's a great book. The only reason I give it four stars instead of five is the extremely awkward use of private fields for passing data between functions in the examples.
Nick Craske
Jul 28, 2018 rated it really liked it  ·  review of another edition
Having reignited my love of programming I have dived into learning Unity with an aim to build games. It's purely for my personal enjoyment. Clean Code is written in an accessible, relaxed and conversational style and throws light and insight on every corner of writing, maintaining and refactoring code. Using Java examples the author clearly sets out his manifesto for elegant, well structured, concise and readable code. It feels good to be coding again.
Mohammad Mahdi Ramezanpour
This is one the best books for programmers and I think every programmer should read it. The only problem this book has is some parts of it is written specifically for Java developers; so, you may want to skip them, if you're not a Java developer.
Yu Chao
Nov 16, 2017 rated it it was ok  ·  review of another edition
It provides some noteworthy principles to keep your code readable and clean. However, personally, I still prefer the "get things done" approach rather than "spend tons of time doing code cleaning while completing little".

I see that Martin really regards software development as an intricate art form...which I hardly agree (I see coding more of a technical tool). So that's probably the reason why I found this book quite uninteresting.
Tadas Talaikis
You're joking with this productivity vs time. That's old oversimplified thinking. It has some truth, but also it produces fast shortcuts that later lead to blue screens in MS presentations. I probably would always remember them, haha.

No, even more recent, Surface tab crashes on presentation:

Where's you productivity now? This is all shit, because I can create complex website in a few weeks, but then I would need months to fix various bugs (e.g. provide "support"). I always say those meaningless u
May 25, 2018 rated it liked it  ·  review of another edition
Shelves: programare
Nu m-a impresionat atât de mult cărticica pe cât ar fi făcut-o dacă probabil nu aș fi văzut înainte mai multe din video-urile sale și nu aș fi citit ”The Clean Coder”. Deși foarte valoroase și utile, ideile sale reverberează peste tot și o dată ce devii familiar cu ele, nu mai au aceeași lucire de geniu, ci începi să îți dai seama, așa cum și Uncle Bob recunoaște, că sunt parte dintr-o școală. O școală negreșit pionieră care descrie bazele profesionalismului în programare și care, dacă orice pro ...more
Aug 09, 2010 rated it really liked it  ·  review of another edition
Recommended to Nikolay by: Stefan Kanev
I loved and I agree with the clean code values the book embodies.

Also, I loved the slight extremism of the rules: never write a function more than 15 lines, never use more than 3 arguments! Of course I will break those rules. But remembering Uncle Bob's fervor when stating the rules, I will always make sure to have a good reason to break them.

The major drawback is that the book is very Java-centric and the examples didn't prove as practical for me, as they could've been. Abstract classes, interf
Guilherme Ferreira
Jul 04, 2014 rated it it was amazing  ·  review of another edition
Recommended to Guilherme by: Robson Castilho
Com este livro pude compreender melhor como organizar código e programar de forma mais legível. O livro trata dos mais diversos assuntos desde testes, funções, exceções, nomes, abstrações e muitos outros tudo isso da ótica da legibilidade de código. Com diversos exemplos práticos de como algumas escolhas ruins podem quebrar princípios básicos da orientação à objeto e se tornarem monstros posteriormente e o mais importante como fazer da forma correta (legível).

O livro também define um conjunto de
Oct 28, 2008 rated it liked it  ·  review of another edition
Shelves: nonfiction, tech
This book is repetitive at times and mentions content already covered in some of the other books in the Robert C. Martin series. I think part of this repetition is due to many of the chapters being authored by different writers, which also occasionally prevents the book from flowing smoothly.

The book is a quick read and raises some interesting arguments on how code should be written. However, if you've read other books in the Robert C. Martin series, you might skip this one. Or if you have the c
Mahmoud Tantawy
Mar 07, 2017 rated it really liked it  ·  review of another edition
One of the best books about "Software Craftsmanship", a must read, specially "Chapter 17: Smells and Heuristics".

A lot of positive reviews have been written about it so i'll just add what i think can be improved.

The book can be a bit boring specially if you are not a Java developer, and even if you are, it is outdated so examples can be a bit misleading and/or seem strange, it is written when Java 5 was new!

I'd love if a modern revision of the book is published with modern examples and may be le
Nick Skelton
Feb 12, 2015 rated it it was amazing  ·  review of another edition
Shelves: coding
Uncle Bob's book was given to me by a mate at work when I first started. I was introduced to the concept of code reviews and pull requests and told to expect a lot of comments on my code reviews to start with. I was then promptly given this book to read to minimise the pain. As a developer with ten years experience, I had seen so many of the things outlined by Uncle Bob and absolutely loved his remedies to them. I am now a convert to the idea of clean code and it has definitely made me a better ...more
« previous 1 3 4 5 6 7 8 9 next »
topics  posts  views  last activity   
Recover/converter thr Damaged and corrupted format of EDB 1 3 Oct 19, 2018 10:31PM  
Book software organizer 2 3 Aug 22, 2018 04:29PM  
SF Ruby Book Club: Making good programming habits 3 26 Mar 13, 2015 03:33PM  
  • Working Effectively with Legacy Code
  • Refactoring: Improving the Design of Existing Code
  • Growing Object-Oriented Software, Guided by Tests
  • Test Driven Development: By Example
  • Domain-Driven Design: Tackling Complexity in the Heart of Software
  • Refactoring to Patterns
  • The Passionate Programmer
  • Head First Design Patterns
  • xUnit Test Patterns: Refactoring Test Code
  • Code Complete
  • Design Patterns: Elements of Reusable Object-Oriented Software
  • The Productive Programmer
  • Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)
  • The Art of Unit Testing: With Examples in .NET
  • Pragmatic Thinking and Learning: Refactor Your Wetware
  • The Pragmatic Programmer: From Journeyman to Master
  • Programming Pearls
  • Effective Java Programming Language Guide

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »
Robert Cecil Martin, commonly called Uncle Bob, is a software engineer, advocate of Agile development methods, and President of Object Mentor Inc. Martin and his team of software consultants use Object-Oriented Design, Patterns, UML, Agile Methodologies, and eXtreme Programming with worldwide clients.

He was Editor in Chief of the C++ Report from 1996 to 1999. He is a featured speaker at internatio
“Truth can only be found in one place: the code.” 40 likes
“It is not enough for code to work.” 21 likes
More quotes…