Start reading Clean Code: A Handbook of Agile Software Craftsmanship on your Kindle in under a minute. Don't have a Kindle? Get your Kindle here.

Deliver to your Kindle or other device

 
 
 

Try it free

Sample the beginning of this book for free

Deliver to your Kindle or other device

Read books on your computer or other mobile devices with our FREE Kindle Reading Apps.
Clean Code: A Handbook of Agile Software Craftsmanship
 
 

Clean Code: A Handbook of Agile Software Craftsmanship [Kindle Edition]

Robert C. Martin
4.2 out of 5 stars  See all reviews (28 customer reviews)

Digital List Price: £26.05 What's this?
Print List Price: £33.99
Kindle Price: £20.22 includes VAT* & free wireless delivery via Amazon Whispernet
You Save: £13.77 (41%)
Unlike print books, digital books are subject to VAT.

Formats

Amazon Price New from Used from
Kindle Edition £20.22  
Paperback £23.79  


Product Description

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.

From the Back Cover

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.


Product details

  • Format: Kindle Edition
  • File Size: 4694 KB
  • Print Length: 466 pages
  • Page Numbers Source ISBN: 0132350882
  • Publisher: Prentice Hall; 1 edition (1 Aug 2008)
  • Sold by: Amazon Media EU S.à r.l.
  • Language English
  • ASIN: B001GSTOAM
  • Text-to-Speech: Enabled
  • Average Customer Review: 4.2 out of 5 stars  See all reviews (28 customer reviews)
  • Amazon Bestsellers Rank: #15,373 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
  •  Would you like to give feedback on images?


More About the Authors

Discover books, learn about writers, and more.

What Other Items Do Customers Buy After Viewing This Item?


Suggested Tags from Similar Products

 (What's this?)
Be the first one to add a relevant tag (keyword that's strongly related to this product)
 
(1)

Your tags: Add your first tag
 

Customer Reviews

Most Helpful Customer Reviews
49 of 53 people found the following review helpful
By Dan Sumption VINE™ VOICE
Format:Paperback
This is a great book, and one which any developer will learn a great deal from. In most respects, it is a five-star book, but... the title is misleading. By rights it should be called "Clean Java Code".

Let me explain: I am an ActionScript developer, and bought this book to improve my code style and structure. For the most part, it has done that: the chapters on naming, comments, functions and classes are absolutely superb. But then, huge swathes of the book are devoted exclusively to Java, and use some fairly complex (and, in my opinion, not very well formatted) code to convey their intention.

I don't generally have a problem with using Java-oriented books to learn more general programming concepts (Martin Fowler's "Refactoring" and O'Reilly's Head-First Design Patterns are both books I would recommend to anyone, regardless of their language-of-choice), but around 1/3rd of Bob Martin's book is virtually impenetrable to anyone who does not already have significant Java experience.

That said, I should re-iterate that this book will be hugely valuable to any programmer. I just wish that they had tried to use a little more pseudo-code and a little less real-world examples, with all of the complexities entailed, and I think a lot could have been done to make the Java code more readable for users of other languages.
Was this review helpful to you?
21 of 23 people found the following review helpful
Format:Paperback
Clean Code is a valuable book for any programmer's bookshelf. Although a lot of the information can be found in other books on software development, particularly those covering "agile" techniques, the text brings everything into one place with a very readable and enjoyable style. I could've done with this about fifteen years ago, rather than learning many of the lessons the hard way over the years.

The book does have some minor issues though. As mentioned by a previous reviewer, it uses Java exclusively for the examples and assumes you are an experienced Java developer. Some of the examples can be heavy going for those unfamiliar with the language.

The book could also do with a bit more proof-reading. Ignoring a copyright of 2009, the words "it's" and "its" seem to have been swapped throughout the book, "an" replaces "and" in a handful of sentences, and there are even some words in the text that are completely wrong. A bit of shame considering.

Don't let the Java or proof-reading put you off though.
Was this review helpful to you?
52 of 58 people found the following review helpful
Format:Paperback
This book is best described as a list of "pet peeves" by the authors. I stress that this book is mainly written by a collection of authors - and not Robert C. Martin - because this is not stated in any promotional material and appears as an unwelcome surprise in the introduction of many chapters.

The first chapter pledges a lot and is very motivational - continuing the promise of the back cover "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." However, for the remainder of the book, the authors never quite get out of their individual rants and fail to provide any great insights beyond the obvious - concluding with a collection of scattergun practices that are more elegantly described in other books.

The value of the second part of the book - described as "several case studies of increasing complexity" - is not particularly evident. I found the Arg (first) and SerialDate (last) cases to be needlessly long. Everything there could be described in isolation. I had expected the second part of the book to be left as a series of short examples for the reader to work on - in the style of Java Puzzlers - but alas, it was a tour of some recent open source contributions that the author wishes to share with the reader.

The section on Concurrency was particularly shocking. The author appears completely oblivious to "Java Concurrency in Practice" by Doug Lea - discussing the 1999 predecessor by introducing it alongside a derogatory statement about maturity. Not only are the concurrency chapters skin deep, but I question why these chapters even made it into this book. Further evidence that the authors set out with no specific agenda when compiling the book, and have ended up with repetitive, sweeping generalisations that deliver only wholesale value across the board.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
Superb
This is a seminal book and I think its a must read for anyone who is trying to escape its masters and create their own "code martial art" :)
Published 1 month ago by Byron Thanopoulos
Great book if you're a Java developer .....
.... not so good if you don't develop in Java

Yes, there's some great advice here for all developers and I applaud the sentiments. Read more
Published 5 months ago by brian@bcpsoftware.com
Top 3 Programming Book
I knew this was going to be an excellent book from the moment I heard Uncle Bod describing his ideas of Clean Code at his key note at an ACCU conference. Read more
Published 8 months ago by Mr. Paul J. Grenyer
Not just for Java devs
Though the book focuses on Java the principles are equally relevant to other OO languages and the examples should be understandable to any competent developer working in a modern... Read more
Published 8 months ago by D. Walker
Clean Code: very practical guide
This book is an excellent hands-on guide for experienced software developers, who have come to the realization that a significant part of their time is spent on maintaining... Read more
Published 9 months ago by Peter Stevens
Clean Code review - MUST READ
I have bought the "Clean Code" and it was a win. The book is well organized and written, easy to read and understand.
Every developer should find a benefit in it. Read more
Published 9 months ago by Jurica
Essential Book For Developers
This book is quite simple:

You read it.

You start to think differently about your code.

You start to write better code. Read more
Published 16 months ago by Steve Fenton
A very good book
As usual Uncle Bob made a very good job. This book is an application of all the theories that you can find in Agile Software Development, Principles, Patterns, and Practices. Read more
Published 16 months ago by Padovani Gianluca
Poor code formatting in the Kindle version
Code blocks in the Kindle version of this book are rendered in a variable-width font, which detracts from their readability. Read more
Published 21 months ago by B. James
Entretenido a la par que instructivo
Este libro recorre distintos aspectos del código de una aplicación y examina cuales son los principales "bad smells" para proponer una solución mejore la... Read more
Published 21 months ago by Justo M. Aguilar Campos
Search Customer Reviews
Only search this product's reviews

Popular Highlights

 (What's this?)
&quote;
The first rule of functions is that they should be small. The second rule of functions is that they should be smaller than that. &quote;
Highlighted by 152 Kindle users
&quote;
FUNCTIONS SHOULD DO ONE THING. THEY SHOULD DO IT WELL. THEY SHOULD DO IT ONLY. &quote;
Highlighted by 152 Kindle users
&quote;
Functions should either do something or answer something, but not both. &quote;
Highlighted by 146 Kindle users

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
 

Search Customer Discussions
Search all Amazon discussions
   



Look for similar items by category


Look for similar items by subject


Amazon Media EU S.à r.l. GB Privacy Statement Amazon Media EU S.à r.l. GB Delivery Information Amazon Media EU S.à r.l. GB Returns & Exchanges