Clean Code and over 390,000 other books are available for Amazon Kindle – Amazon’s new wireless reading device. Learn more

 

or
Sign in to turn on 1-Click ordering.
 
 
Express Checkout with PayPhrase
What's this? | Create PayPhrase
More Buying Choices
48 used & new from $30.22

Have one to sell? Sell yours here
 
   
Clean Code: A Handbook of Agile Software Craftsmanship
 
 
Start reading Clean Code on your Kindle in under a minute.

Don’t have a Kindle? Get your Kindle here.
 
  

Clean Code: A Handbook of Agile Software Craftsmanship (Paperback)

~ (Editor) "You are reading this book for two reasons..." (more)
Key Phrases: agile software development, vertical formatting, implementation patterns, String Arguments, Successive Refinement Listing, Kent Beck (more...)
4.3 out of 5 stars  See all reviews (52 customer reviews)

List Price: $47.99
Price: $31.38 & this item ships for FREE with Super Saver Shipping. Details
You Save: $16.61 (35%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Want it delivered Monday, January 4? Choose One-Day Shipping at checkout. Details
33 new from $30.22 15 used from $35.00

Formats

Amazon Price New from Used from
  Kindle Edition, August 1, 2008 $28.24 -- --
  Paperback, August 10, 2008 $31.38 $30.22 $35.00

Frequently Bought Together

Clean Code: A Handbook of Agile Software Craftsmanship + Working Effectively with Legacy Code + The Art of Unit Testing: With Examples in .Net
Price For All Three: $97.00

Show availability and shipping details

  • This item: Clean Code: A Handbook of Agile Software Craftsmanship by Dean Wampler

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Working Effectively with Legacy Code by Michael C. Feathers

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • The Art of Unit Testing: With Examples in .Net by Roy Osherove

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details


Customers Who Bought This Item Also Bought

Working Effectively with Legacy Code

Working Effectively with Legacy Code

by Michael C. Feathers
4.8 out of 5 stars (32)  $39.23
Agile Principles, Patterns, and Practices in C#

Agile Principles, Patterns, and Practices in C#

by Robert Cecil Martin
4.4 out of 5 stars (23)  $42.50
The Art of Unit Testing: With Examples in .Net

The Art of Unit Testing: With Examples in .Net

by Roy Osherove
4.9 out of 5 stars (15)  $26.39
The Productive Programmer (Theory in Practice (O'Reilly))

The Productive Programmer (Theory in Practice (O'Reilly))

by Neal Ford
4.4 out of 5 stars (22)  $26.40
Agile Software Development, Principles, Patterns, and Practices

Agile Software Development, Principles, Patterns, and Practices

by Robert Cecil Martin
4.8 out of 5 stars (33)  $52.32
Explore similar items

Editorial Reviews

Product Description

Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.

Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code “on the fly” into a book that will instill within you the values of a software craftsman and make you a better programmer—but only if you work at it.

What kind of work will you be doing? You’ll be reading code—lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft.

Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code—of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and “smells” gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code.

Readers will come away from this book understanding
  • How to tell the difference between good and bad code
  • How to write good code and how to transform bad code into good code
  • How to create good names, good functions, good objects, and good classes
  • How to format code for maximum readability
  • How to implement complete error handling without obscuring code logic
  • How to unit test and practice test-driven development
This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.



About the Author

Robert C. “Uncle Bob” Martin has been a software professional since 1970 and an international software consultant since 1990. He is founder and president of Object Mentor, Inc., a team of experienced consultants who mentor their clients worldwide in the fields of C++, Java, C#, Ruby, OO, Design Patterns, UML, Agile Methodologies, and eXtreme programming.

Product Details

  • Paperback: 464 pages
  • Publisher: Prentice Hall PTR; 1 edition (August 11, 2008)
  • Language: English
  • ISBN-10: 0132350882
  • ISBN-13: 978-0132350884
  • Product Dimensions: 9.1 x 6.9 x 0.9 inches
  • Shipping Weight: 1.5 pounds (View shipping rates and policies)
  • Average Customer Review: 4.3 out of 5 stars  See all reviews (52 customer reviews)
  • Amazon.com Sales Rank: #23,962 in Books (See Bestsellers in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Inside This Book (learn more)

What Do Customers Ultimately Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(14)

Your tags: Add your first tag
 

 

Customer Reviews

52 Reviews
5 star:
 (33)
4 star:
 (12)
3 star:
 (3)
2 star:    (0)
1 star:
 (4)
 
 
 
 
 
Average Customer Review
4.3 out of 5 stars (52 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
21 of 21 people found the following review helpful:
5.0 out of 5 stars Applying the Boy Scout Rule..., September 23, 2008
When you do code maintenance, you can really "love" or "hate" a person that you do not even know just by the code he or she has written. Messy code almost always goes hand in hand with lower productivity, lower motivation, and a higher number of bugs. In the first chapter, Robert C. Martin presents in a very instructive way, the opinion from very well-known personalities about what "clean code" is, and also suggests we apply the Boy Scout Rule (Leave the campground cleaner that you found it) to our code. The following chapters present practical advice about how to do this cleaning (or even better, how to avoid the mess in the first place).

The suggestions presented in the book (meaningful names, pertinence of comments, code formatting, etc) may sound very familiar to any experienced programmer but they are presented with such a level of detail and with very illustrative examples that it is almost impossible not to learn valuable things chapter by chapter. All the examples are in Java, but the guidelines they illustrate can be applied, in most of the cases, to other languages.

The most challenging chapter to read (but also a very valuable one) was the Refactoring of the class SerialDate (from the JCommon library). It is a real-life example and the author shows step-by-step what it takes to do refactoring. The last chapter, "Smells and Heuristics" makes a very good closure presenting in categories and in a condensed way, potential problems and suggested ways to solve/mitigate them.

I enjoyed reading this book and after finishing it, I decided to apply the Boy Scout Rule. I took a module written in a procedural language and not only managed to improve the clarity of the code, but also reduced the number of lines from more than 1,100 to 650. The next person to touch this code will certainly be happy to deal with cleaner code!
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
22 of 24 people found the following review helpful:
5.0 out of 5 stars A must-buy for object-oriented developers, August 21, 2008

When most people hear the term "bad writing" they understand the term: Confusing, inconsistent, rambling, big words used incorrectly.

In fact, we have lots and lots of educational programs designed to teach grammar, composition, journalism, and fiction. Master's Degrees in the subject, even.

But for software development we seemed obsessed with "architecture" (whatever that means), process and patterns.

In this book, Bob Martin takes a specific stab at what good code looks like. He provides rules, examples, and even sample transformations.

It is not an easy book. If you are a new developer, you can invest a lot of time and energy into really absorbing the concepts and practicing them yourself. If you are more senior, you may disagree, you may struggle, you may toss the book in a corner and yell at it ...

But then you'll pick it back up again. And you will be a better developer for it.

One thing that I struggle with about the traditional CS cirricula is that so little attention is spent on maintenance, which is the vast majority of actual development time. This book presents an aesthetic and the skills to write maintainable code. If you teach software development, you'll want to use this book in your courses.

Student, Journeyman, Master, or Instructor - A book like this belongs on your bookshelf. Follow the advice in it, or have an explanation why not - either way you'll be a strong developer.

Of course, there are other books in this area. What struck me about this one is the quality of the writing; it is truly engaging and -- a little inspiring. That quality is so rare in technical books that I give this one five stars.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
14 of 14 people found the following review helpful:
4.0 out of 5 stars writing clean readable maintainable code - by example, September 14, 2008
By Jeanne Boyarsky (New York, NY) - See all my reviews
"Clean Code" focuses on how to write "good" code. Where "good" is defined as being easy for others to read and maintain. It's not that I disagree with the definition of "good" here. The quotes are because 'bad" code is easier to identify. Then there is "good" code and really "great" code. The code in this book is what we should aspire to write.

There are three main sections to the book. The first describes principles with examples. I liked this section best including the chapters written by other experts. The third is the actual "smells and heuristics." While they are good, they were so short they wound up being a summary.

The second section is the case studies. Martin warns up front that this will involve a lot of reading code and cross referencing. I had trouble with flipping back and forth between the chapter, rules and an appendix at the same time. So much flipping was disruptive to my train of thought - even with three bookmarks.

Martin is good about referencing other related titles such as "Implementation Patterns." If you haven't yet read "Implementation Patterns", I recommend starting with that title. It's easier reading which is helpful when newer to a topic. Also while both books are very good, I liked "Implementation Patterns" better. (see my review on that title for why)

The actual content was excellent. The book only loses a point for the logistical issues in reading it.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

1.0 out of 5 stars A lot of talking but nothing concrete
This book contains a lot of text about importance of good code and how hard it is to write one. But there is no concrete examples. A lot of "blah blah blah.. Read more
Published 10 days ago by CyberK

5.0 out of 5 stars Please read. Please!
If it's your profession to write code, then you should have this book at your side while doing it. Its in Java but c# developers will get it no problem.
Published 21 days ago by Adam J. Wolf

5.0 out of 5 stars A Quick and Informative Read on Crafting Code
"Clean Code" informs developers how they can write code that is more readable and maintainable.

The first section of the book covers identifying confusing code and... Read more
Published 22 days ago by T. Nguyen

1.0 out of 5 stars Clean is a subjective term
The author fails to recognize that creating clean code is a balancing act, so he proceeds to fall off of a couple of big cliffs: 1) Advocating creating a million tiny functions... Read more
Published 23 days ago by Roberto

5.0 out of 5 stars Code improvements of the third kind
Let's get this out of the way right now: There are a LOT of books out there about improving your programming style. Read more
Published 1 month ago by Ben Sunshine-Hill

4.0 out of 5 stars Fulfill my expectation
I would have given it 5 stars if I didn't read the Code Complete 2 by Steve McConnell.
This book is clear and concise for readers of all levels of programming skills... Read more
Published 1 month ago by Steven Koh

5.0 out of 5 stars A must to read for all programmers
This book is one of the best books about programming I have ever read. Follow the suggestions in this book and you will develop 100% as a programmer.
Published 1 month ago by Atle Rinvoll

5.0 out of 5 stars Great rules to follow
It definitely teaches me how to write a better and clean code. Following these rules would save a lot of maintaining time and efforts. Read more
Published 2 months ago by Ke Liu

5.0 out of 5 stars Good stuff -- *UN*common sense.
Another reviewer stated that most of this book was "common sense". However, he either didn't read the whole book (usually the case) or he works only with people who have. Read more
Published 2 months ago by T. Moser

4.0 out of 5 stars Solid Principles and Advice for Any OO Developer
This book provides some really good principles that all developers can benefit from using. If you have been developing software for any length of time, then some of the... Read more
Published 3 months ago by ri music guy

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   




Product Information from the Amapedia Community

Beta (What's this?)


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.