Clean Craftsmanship

Clean Craftsmanship : Disciplines, Standards, and Ethics

By (author) 

Free delivery worldwide

Available soon, pre-order now.
When will my order arrive?


How to Write Code You're Proud of . . . Every Single Day
". . . [A] timely and humble reminder of the ever-increasing complexity of our programmatic world and how we owe it to the legacy of humankind--and to ourselves--to practice ethical development. Take your time reading Clean Craftsmanship. . . . Keep this book on your go-to bookshelf. Let this book be your old friend--your Uncle Bob, your guide--as you make your way through this world with curiosity and courage."
--From the Foreword by Stacia Heimgartner Viscardi, CST & Agile Mentor
In Clean Craftmanship, the legendary Robert C. Martin ("Uncle Bob") has written the principles that define the profession--and the craft--of software development. Uncle Bob brings together the disciplines, standards, and ethics you need to deliver robust, effective code and to be proud of all the software you write.

Robert Martin, the best-selling author of Clean Code, provides a pragmatic, technical, and prescriptive guide to the foundational disciplines of software craftsmanship. He discusses standards, showing how the world's expectations of developers often differ from their own and helping you bring the two in sync. Bob concludes with the ethics of the programming profession, describing the fundamental promises all developers should make to their colleagues, their users, and, above all, themselves.

With Uncle Bob's insights, all programmers and their managers can consistently deliver code that builds trust instead of undermining it--trust among users and throughout societies that depend on software for their survival.

Moving towards the "north star" of true software craftsmanship: the state of knowing how to program well
Practical, specific guidance for applying five core disciplines: test-driven development, refactoring, simple design,
collaborative programming, and acceptance tests
How developers and teams can promote productivity, quality, and courage
The true meaning of integrity and teamwork among programmers, and ten specific commitments every software
professional should make

Register your book for convenient access to the book's companion videos, updates, and/or corrections as they become available. See inside book for details.
show more

Product details

  • Paperback | 416 pages
  • Addison Wesley
  • Boston, United States
  • English
  • 013691571X
  • 9780136915713
  • 296,107

Table of contents

Foreword xvii
Preface xxi
Acknowledgments xxvii
About the Author xxix

Chapter 1: Craftsmanship 1

Part I: The Disciplines 11
Extreme Programming 13
Test-Driven Development 15
Refactoring 16
Simple Design 17
Collaborative Programming 17
Acceptance Tests 18

Chapter 2: Test-Driven Development 19
Overview 20
The Basics 35
Conclusion 79

Chapter 3: Advanced TDD 81
Sort 1 82
Sort 2 87
Getting Stuck 95
Arrange, Act, Assert 103
Test Doubles 108
Architecture 143
Conclusion 145

Chapter 4: Test Design 147
Testing Databases 148
Testing GUIs 150
Test Patterns 154
Test Design 160
Transformation Priority Premise 184
Conclusion 196

Chapter 5: Refactoring 197
What Is Refactoring? 199
The Basic Toolkit 200
The Disciplines 217
Conclusion 221

Chapter 6: Simple Design 223
Covered by Tests 228
Maximize Expression 233
Minimize Duplication 237
Minimize Size 239

Chapter 7: Collaborative Programming 241

Chapter 8: Acceptance Tests 245
The Discipline 248
The Continuous Build 249

Part II: The Standards 251
Your New CTO 252

Chapter 9: Productivity 253
We Will Never Ship S**T 254
Inexpensive Adaptability 256
We Will Always Be Ready 258
Stable Productivity 259

Chapter 10: Quality 261
Continuous Improvement 262
Fearless Competence 263
Extreme Quality 264
We Will Not Dump on QA 265
QA Will Find Nothing 266
Test Automation 267
Automated Testing and User Interfaces 268
Testing the User Interface 269

Chapter 11: Courage 271
We Cover for Each Other 272
Honest Estimates 274
You Must Say NO 276
Continuous Aggressive Learning 277
Mentoring 278

Part III: The Ethics 279
The First Programmer 280
Seventy-Five Years 281
Nerds and Saviors 286
Role Models and Villains 289
We Rule the World 290
Catastrophes 291
The Oath 293

Chapter 12: Harm 295
First, Do No Harm 296
Best Work 306
Repeatable Proof 316

Chapter 13: Integrity 327
Small Cycles 328
Relentless Improvement 342
Maintain High Productivity 346

Chapter 14: Teamwork 355
Work as a Team 356
Estimate Honestly and Fairly 358
Respect 372
Never Stop Learning 373

Index 375
show more

About Robert C. Martin

Robert C. Martin ("Uncle Bob") wrote his first line of code at the age of 12 in 1964 and has been employed as a programmer since 1970. He is cofounder of, offering online video training for software developers, and is founder of Uncle Bob Consulting LLC, offering software consulting, training, and skill development services to major corporations worldwide. He served as the Master Craftsman at 8th Light, Inc., a Chicago-based software consulting firm. Mr. Martin has published dozens of articles in various trade journals, authored many books, and is a regular speaker at international conferences and trade shows.
show more