Buying Options

Kindle Price: $35.43
includes tax, if applicable

These promotions will be applied to this item:

Some promotions may be combined; others are not eligible to be combined with other offers. For details, please see the Terms & Conditions associated with these promotions.

Deliver to your Kindle or other device

Deliver to your Kindle or other device

<Embed>

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet or computer – no Kindle device required. Learn more

Read instantly on your browser with Kindle Cloud Reader.

Using your mobile phone camera, scan the code below and download the Kindle app.

QR code to download the Kindle App

Enter your mobile phone or email address

Processing your request...

By pressing ‘Send link’, you agree to Amazon's Conditions of Use.

You consent to receive an automated text message from or on behalf of Amazon about the Kindle App at your mobile number above. Consent is not a condition of any purchase. Message and data rates may apply.

Clean Code: A Handbook of Agile Software Craftsmanship by [Martin Robert C.]
Audible Sample
Playing...
Loading...
Paused

Follow the Authors

Something went wrong. Please try your request again later.


Clean Code: A Handbook of Agile Software Craftsmanship 1st Edition, Kindle Edition

4.7 out of 5 stars 3,036 ratings

Amazon Price
New from Used from
Kindle
$35.43
Due to its large file size, this book may take longer to download

Kindle Monthly Deals
Kindle Monthly Deals
New deals each month starting at $1.49. Learn more

Product description

Excerpt. © Reprinted by permission. All rights reserved.

Which door represents your code? Which door represents your team or your company? Why are we in that room? Is this just a normal code review or have we found a stream of horrible problems shortly after going live? Are we debugging in a panic, poring over code that we thought worked? Are customers leaving in droves and managers breathing down our necks? How can we make sure we wind up behind the right door when the going gets tough? The answer is: craftsmanship.

There are two parts to learning craftsmanship: knowledge and work. You must gain the knowledge of principles, patterns, practices, and heuristics that a craftsman knows, and you must also grind that knowledge into your fingers, eyes, and gut by working hard and practicing.

I can teach you the physics of riding a bicycle. Indeed, the classical mathematics is relatively straightforward. Gravity, friction, angular momentum, center of mass, and so forth, can be demonstrated with less than a page full of equations. Given those formulae I could prove to you that bicycle riding is practical and give you all the knowledge you needed to make it work. And you'd still fall down the first time you climbed on that bike.

Coding is no different. We could write down all the "feel good" principles of clean code and then trust you to do the work (in other words, let you fall down when you get on the bike), but then what kind of teachers would that make us, and what kind of student would that make you?

No. That's not the way this book is going to work.

Learning to write clean code is hard work. It requires more than just the knowledge of principles and patterns. You must sweat over it. You must practice it yourself, and watch yourself fail. You must watch others practice it and fail. You must see them stumble and retrace their steps. You must see them agonize over decisions and see the price they pay for making those decisions the wrong way.

Be prepared to work hard while reading this book. This is not a "feel good" book that you can read on an airplane and finish before you land. This book will make you work, and work hard. 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. You'll be asked to follow along as we take modules apart and put them back together again. This will take time and effort; but we think it will be worth it.

We have divided this book into three parts. The first several chapters describe the principles, patterns, and practices of writing clean code. There is quite a bit of code in these chapters, and they will be challenging to read. They'll prepare you for the second section to come. If you put the book down after reading the first section, good luck to you!

The second part of the book is the harder work. It consists of several case studies of ever-increasing complexity. Each case study is an exercise in cleaning up some code--of transforming code that has some problems into code that has fewer problems. The detail in this section is intense. You will have to flip back and forth between the narrative and the code listings. You will have to analyze and understand the code we are working with and walk through our reasoning for making each change we make. Set aside some time because this should take you days.

The third part of this book is the payoff. It is a single chapter containing a list of heuristics and smells gathered while creating the case studies. As we walked through and cleaned up the code in the case studies, we documented every reason for our actions as a heuristic or smell. We tried to understand our own reactions to the code we were reading and changing, and worked hard to capture why we felt what we felt and did what we did. The result is a knowledge base that desribes the way we think when we write, read, and clean code.

This knowledge base is of limited value if you don't do the work of carefully reading through the case studies in the second part of this book. In those case studies we have carefully annotated each change we made with forward references to the heuristics. These forward references appear in square brackets like this: H22. This lets you see the context in which those heuristics were applied and written! It is not the heuristics themselves that are so valuable, it is the relationship between those heuristics and the discrete decisions we made while cleaning up the code in the case studies.

To further help you with those relationships, we have placed a cross-reference at the end of the book that shows the page number for every forward reference. You can use it to look up each place where a certain heuristic was applied.

If you read the first and third sections and skip over the case studies, then you will have read yet another "feel good" book about writing good software. But if you take the time to work through the case studies, following every tiny step, every minute decision--if you put yourself in our place, and force yourself to think along the same paths that we thought, then you will gain a much richer understanding of those principles, patterns, practices, and heuristics. They won't be "feel good" knowledge any more. They'll have been ground into your gut, fingers, and heart. They'll have become part of you in the same way that a bicycle becomes an extension of your will when you have mastered how to ride it.

--This text refers to an out of print or unavailable edition of this title.

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.

--This text refers to an out of print or unavailable edition of this title.

Product details

  • ASIN ‏ : ‎ B001GSTOAM
  • Publisher ‏ : ‎ Pearson; 1st edition (1 August 2008)
  • Language ‏ : ‎ English
  • File size ‏ : ‎ 42806 KB
  • Simultaneous device usage ‏ : ‎ Up to 5 simultaneous devices, per publisher limits
  • Text-to-Speech ‏ : ‎ Enabled
  • Screen Reader ‏ : ‎ Supported
  • Enhanced typesetting ‏ : ‎ Enabled
  • X-Ray ‏ : ‎ Not Enabled
  • Word Wise ‏ : ‎ Not Enabled
  • Print length ‏ : ‎ 1207 pages
  • Customer Reviews:
    4.7 out of 5 stars 3,036 ratings

Customer reviews

4.7 out of 5 stars
4.7 out of 5
3,036 global ratings

Review this product

Share your thoughts with other customers

Top reviews from Australia

Reviewed in Australia on 27 March 2021
Verified Purchase
Reviewed in Australia on 14 September 2021
Verified Purchase
Reviewed in Australia on 29 April 2018
Verified Purchase
One person found this helpful
Report abuse
Reviewed in Australia on 28 March 2021
Verified Purchase
Customer image
4.0 out of 5 stars Terrible print ever seen
By stone on 28 March 2021
The book itself is awesome. Just the seller- Feels like they are running out of ink cartridges
Images in this review
Customer image
Customer image
Reviewed in Australia on 27 February 2021
Verified Purchase
Reviewed in Australia on 25 July 2019
Verified Purchase
One person found this helpful
Report abuse
Reviewed in Australia on 3 December 2021
Verified Purchase
Customer image
5.0 out of 5 stars Must read for software developer
By Konstantin N. on 3 December 2021
Images in this review
Customer image Customer image
Customer imageCustomer image

Top reviews from other countries

Little Bobby Tables
2.0 out of 5 stars I mean he calls himself Uncle Bob...
Reviewed in the United Kingdom on 10 August 2019
Verified Purchase
37 people found this helpful
Report abuse
bomfirit
1.0 out of 5 stars Gedrucktes PDF!!!
Reviewed in Germany on 7 November 2017
Verified Purchase
Customer image
1.0 out of 5 stars Gedrucktes PDF!!!
Reviewed in Germany on 7 November 2017
Das Buch sollte jeder Entwickler kennen. Pflichtlektüre! Aber, bitte nicht hier bestellen! Was man bekommt ist ein gedrucktes PDF, welches dummerweise in der falschen Papiergröße bedruckt ist. Man hat also an den Rändern riesige weiße Flächen. Das Buch ist daher unnötigerweise ca 25% größer als das Original. Zudem ist die verwendete Tinte sehr hell. Die Codebeispiele sind kaum zu lesen. Das Cover ist im Vergleich zum Original verwaschen. Das Buch geht sofort zurück und wird im Laden (zur Ansicht) bestellt. Jetzt weiß ich warum die Lieferzeit auch 3 Wochen betrug. Das Buch wird offensichtlich auf Anfrage gedruckt.

Bei den beigefügten Bildern sieht man das Original (von der Firma) und das hier bestellte Buch (PDF Druck)
Images in this review
Customer image Customer image
Customer imageCustomer image
187 people found this helpful
Report abuse
Thomas
1.0 out of 5 stars Leider eine billige Kopie, bitte nicht bestellen.
Reviewed in Germany on 22 April 2018
Verified Purchase
Customer image
1.0 out of 5 stars Leider eine billige Kopie, bitte nicht bestellen.
Reviewed in Germany on 22 April 2018
Meine Renzension bezieht sich ausschließlich auf das erhaltene Exemplar. Ich habe direkt bei Amazon bestellt (Verkauf & Versand durch Amazon), kein Marketplace.

Wie bereits von anderen Personen festgestellt, habe auch ich leider eine billige Kopie des Originals erhalten - vermutlich ein Druck der PDF-Version. Der Druck ist schlecht, das Format ist unnötigerweise sehr viel größer, das Cover ist verschwommen/verpixelt, kein bzw. weißer Buchrücken und -rückseite.

Hierfür über 29€ zu verlangen grenzt an Betrug. Ich habe das Exemplar unmittelbar zurückgeschickt. Schade.
Images in this review
Customer image Customer image
Customer imageCustomer image
74 people found this helpful
Report abuse
Murilo
5.0 out of 5 stars Conteúdo Excelente!
Reviewed in Brazil on 31 January 2020
Verified Purchase
33 people found this helpful
Report abuse
randomboy93
4.0 out of 5 stars This is a good book for beginner developers
Reviewed in the United Kingdom on 9 February 2018
Verified Purchase
16 people found this helpful
Report abuse