- Paperback: 464 pages
- Publisher: Prentice Hall; 1 edition (August 11, 2008)
- Language: English
- ISBN-10: 9780132350884
- ISBN-13: 978-0132350884
- ASIN: 0132350882
- Product Dimensions: 7 x 1.2 x 9.2 inches
- Shipping Weight: 1.7 pounds (View shipping rates and policies)
- Average Customer Review: 477 customer reviews
- Amazon Best Sellers Rank: #3,485 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Clean Code: A Handbook of Agile Software Craftsmanship 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
Frequently bought together
Customers who bought this item also bought
From the Publisher
|A Handbook of Agile Software Craftsmanship||Practical Advice for the Professional Programmer||A Craftsman's Guide to Software Structure and Design||Professionalism, Pragmatism, Pride||Get Better Performance Out of Your Legacy Systems|
|Title||Clean Code||Clean Coder||Clean Architecture||The Software Craftsman||Working Effectively with Legacy Code|
|Core Concept||Best agile practices of cleaning code “on the fly” that will instill within you the values of a software craftsman and make you a better programmer—but only if you work at it.||Robert C. Martin introduces the disciplines, techniques, tools, and practices of true software craftsmanship. This book is packed with practical advice–about everything from estimating and coding to refactoring and testing.||Uncle Bob presents the universal rules of software architecture that will help you dramatically improve developer productivity throughout the life of any software system.||Sandro Mancuso helped found the world’s largest organization of software craftsmen; now, he shares what he’s learned through inspiring examples and pragmatic advice you can use in your company, your projects, and your career.||Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts. Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases.|
|Endoresement||"It is the best pragmatic application of Lean principles to software I have ever seen in print." —James O. Coplien, Founder of the Pasteur Organizational Patterns project||“Some technical books inspire and teach; some delight and amuse. Rarely does a technical book do all four of these things. Read, learn, and live the lessons in this book and you can accurately call yourself a software professional.” —George Bullock Senior Program Manager Microsoft Corp.||"A good architecture comes from understanding it more as a journey than as a destination, more as an ongoing process of enquiry than as a frozen artifact." -- Kevlin Henney||"If you are the type of programmer, team lead, or manager who craves to be able to go home after a long day of work, look in the mirror, and say, 'Damn, I did a good job today!' then this is the book for you." -- Robert C. Martin||"This book describes a set of disciplines, concepts, and attitudes that you will carry with you for the rest of your career and that will help you to turn systems that gradually degrade into systems that gradually improve." --- Robert C. Martin|
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 codeHow to write good code and how to transform bad code into good codeHow to create good names, good functions, good objects, and good classesHow to format code for maximum readabilityHow to implement complete error handling without obscuring code logicHow to unit test and practice test-driven developmentThis 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.
Try the Kindle edition and experience these great reading features:
Read reviews that mention
There was a problem filtering reviews right now. Please try again later.
Every programmer regardless of experience should read this book. Thanks!
Much of the information in this books is eye opening, particularly the chapters on functions, classes, and code smells. However, a serious problem is that this book is very, very Java-centric, and it is clearly a product of its 2009 copyright date. Many of the chapters have been made moot (PEP8 and Prettier making the formatting chapter largely obsolete, for example), and a few aren't totally applicable to any other language.
Note about buying a new, physical version from Amazon: don't. The book will be damaged in shipping as it just comes in a padded envelope and will be dog-eared like a used book before you receive it. See my picture.
The code examples are written in Java and are there to show how to refactor code based on the principles and reasoning within the book.
This is not a book that I take as a specific do this or else, more of a guide that explains why you should consider writing code in the way described.
Essentially the lesson is to create code that is small, has a specific purpose and does that one thing.
When functions or methods begin to stray into doing multiple things spin those code pieces off on their own and repeat.
What I get from this book is a mindset or way of thinking about programming. To create code that is cohesive, is small, does not have unnecessary parts. When these principles are broken find a way to refactor or eliminate the additional pieces. It is not just about taking away or keeping code small but adopting a way of thinking about the design of the program and how each piece interacts with the other parts.
The suggested line lengths of functions mentioned and other very specific examples is more where your critical thinking comes into play. I do not program in Java so many of the language specific scenarios do not apply to me. in some languages you just can't have or do some of the things suggested. Though as a general rule of thumb I find the examples helpful and when I mean general rule of thumb I do not mean a specific line count or size but a simplistic do as little as possible to achieve the goal. Simplify. Simplify. Simplify.
I purchased and received the 16th printing of this book, published February 2016.
There are no weird formatting or printing issues with the book as others have mentioned.
If you have the ability to reason and think critically, being able to adapt examples and suggestions to your own style and language then I highly recommend this book. The contents are NOT common sense and do not come naturally to the uninitiated. The book does take you by the hand in a certain way leading you from the process of just make the program work to thinking about the logic design and function of your programs.
When you are in situations where redesign is not possible the principles learned from this book will help you to refactor when possible and write new code that is better, smaller, tighter. Making you a better more valuable programmer.
I heard that originally, the print quality was ok, well, it's not anymore.
It's still readable, but I would never buy it if I new about the print quality.
Should've read other reviews.
Clean Code goes into the depths of the problem. Robert Martin takes you through pages upon pages of code to make the points clear and relevant to real world problems. Too many books give simple examples that are difficult to make meaningful.
Overall this is a great book that I recommend to programmers at all levels. You will learn something new (even though it's an "older" book).