Clean Code: A Handbook of Agile Software Craftsmanship Paperback – Aug 1 2008
|New from||Used from|
Frequently Bought Together
Customers Who Bought This Item Also Bought
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
To get the free app, enter your e-mail address or mobile phone number.
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 withClean 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 Codeis 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
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.See all Product Description
Inside This Book(Learn More)
What Other Items Do Customers Buy After Viewing This Item?
Top Customer Reviews
What impressed me most about this book was the many examples: "Uncle Bob" gave practical before and after examples of applying the principals of clean code. The examples were realistic and worthwhile: he'd take a piece of code, iteratively apply different principals and by the time he was done the code looked, well, clean, both in design and readability.
From what I've heard, what people remember most is the principal of "self-documenting code". Now I too had heard all of that before and I'd seen some terrible "self-documenting" code; however, when Martin explained it--and gave examples--it began to make sense and I've been doing it ever since. Trust me, when _he_ explains it, it makes sense.
The book goes well beyond self-documenting code. I would recommend this book for anyone who codes, but especially for someone with a couple years of, not just writing code, but also reading other people's code; often it's hard to pin down just what is so difficult and clumsy about the code we write and Martin shows us.
The common theme that runs through the book is the push to be a true professional when programming. More often than not we get something working and then move on, saying that we'll write the tests or refactor it later. A professional will clean up the mess immediately before moving on to the next task. In this sense the book is inspiring if these goals are in line with yours.
In some ways the book reminds me of Code Complete, but if you already have read that you will still find new content, in particular with the exhaustive examples that show various clean ups including a portion of JUnit. A couple of the examples feel like they go on too long, including an Appendix of 60 pages of a replacement Date class for Java. I just find reading that much code in a book to be more difficult than on-screen.
The writing style of the book is very easy to follow, and does not dry out with a sprinkle of geeky humor and real-life stories. The suggestions are based on the modern programming world today, and how the life of your code may last longer and go through more hands than you may expect.
I have already started to change my coding patterns based on some of these recommendations.. and I know shifting my mindset over whatever period of time towards cleaner code, will benefit me and those to come after me.
Clean Code should be standard for all programmers/architects/engineers in any position.
There is a chapter at the end that summarize all the concepts so you can read this chapter often to remember them.
Add this to Fowler's Refactoring to make a great 1 - 2 punch.
While Fowler's Refactoring demonstrates techniques for moving code from one state to another, this book identifies lower level examples of what needs to be refactored (or written correctly the first time).
Read it, code for a month, and read it again.
If you haven't read this, fix that. The best teams I've ever worked with know this material cold, and I say that speaking as a VP of Software Engineering in several firms with 30 years of experience.
Most recent customer reviews
All software developers, whether professional or hobbyist, should read this. Even the most seasoned of developers will likely get something from this book.Published 3 months ago by L P Gilbraith
Really nice book and fun to read. Changes your thinking about so many small things during development, highly recommended.Published 5 months ago by Amazon Customer
Awesome book.If you feel uncertain that the way you write code is efficient, read this book.Published 7 months ago by Peter Pantelakos
An excellent book on programming, the author has a vast amount of experience to draw upon including his own versions on what not to do and ways to make your code more efficientPublished 11 months ago by Mason
Thought of it more as a good reading material for commute - but this book is so much more - examples in the book are great and imho you need practice with the material learnedPublished 12 months ago by tim borkh
Look for similar items by category
- Books > Computers & Technology > Computer Science > Software Engineering
- Books > Computers & Technology > Programming > Languages & Tools
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Quality Control
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Software Development
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Testing
- Books > Textbooks > Computer Science & Information Systems > Programming Languages
- Books > Textbooks > Computer Science & Information Systems > Software Design & Engineering