- By Kent Beck
- Published Oct 23, 2007 by Addison-Wesley Professional. Part of the Addison-Wesley Signature Series (Beck) series.
- Copyright 2008
- Dimensions: 7x9-1/4
- Pages: 176
- Edition: 1st
- ISBN-10: 0-321-41309-1
- ISBN-13: 978-0-321-41309-3
Register your product to gain access to bonus material or receive a coupon.
Product Author Bios
Kent Beck, one of the software industry’s most creative and acclaimed leaders, consistently challenges software engineering dogma and promotes ideas like patterns, test-driven development, and Extreme Programming. Currently affiliated with Three Rivers Institute and Agitar Software, he is the author of many Addison-Wesley titles, including Test-Driven Development (2003) and, with Cynthia Andres, Extreme Programming Explained, Second Edition (2005).
“Kent is a master at creating code that communicates well, is easy to understand, and is a pleasure to read. Every chapter of this book contains excellent explanations and insights into the smaller but important decisions we continuously have to make when creating quality code and classes.”
–Erich Gamma, IBM Distinguished Engineer
“Many teams have a master developer who makes a rapid stream of good decisions all day long. Their code is easy to understand, quick to modify, and feels safe and comfortable to work with. If you ask how they thought to write something the way they did, they always have a good reason. This book will help you become the master developer on your team. The breadth and depth of topics will engage veteran programmers, who will pick up new tricks and improve on old habits, while the clarity makes it accessible to even novice developers.”
–Russ Rufer, Silicon Valley Patterns Group
“Many people don’t realize how readable code can be and how valuable that readability is. Kent has taught me so much, I’m glad this book gives everyone the chance to learn from him.”
–Martin Fowler, chief scientist, ThoughtWorks
“Code should be worth reading, not just by the compiler, but by humans. Kent Beck distilled his experience into a cohesive collection of implementation patterns. These nuggets of advice will make your code truly worth reading.”
–Gregor Hohpe, author of Enterprise Integration Patterns
“In this book Kent Beck shows how writing clear and readable code follows from the application of simple principles. Implementation Patterns will help developers write intention revealing code that is both easy to understand and flexible towards future extensions. A must read for developers who are serious about their code.”
“Implementation Patterns bridges the gap between design and coding. Beck introduces a new way of thinking about programming by basing his discussion on values and principles.”
–Diomidis Spinellis, author of Code Reading and Code Quality
Software Expert Kent Beck Presents a Catalog of Patterns Infinitely Useful for Everyday Programming
Great code doesn’t just function: it clearly and consistently communicates your intentions, allowing other programmers to understand your code, rely on it, and modify it with confidence. But great code doesn’t just happen. It is the outcome of hundreds of small but critical decisions programmers make every single day. Now, legendary software innovator Kent Beck–known worldwide for creating Extreme Programming and pioneering software patterns and test-driven development–focuses on these critical decisions, unearthing powerful “implementation patterns” for writing programs that are simpler, clearer, better organized, and more cost effective.
Beck collects 77 patterns for handling everyday programming tasks and writing more readable code. This new collection of patterns addresses many aspects of development, including class, state, behavior, method, collections, frameworks, and more. He uses diagrams, stories, examples, and essays to engage the reader as he illuminates the patterns. You’ll find proven solutions for handling everything from naming variables to checking exceptions.
This book covers
- The value of communicating through code and the philosophy behind patterns
- How and when to create classes, and how classes encode logic
- Best practices for storing and retrieving state
- Behavior: patterns for representing logic, including alternative paths
- Writing, naming, and decomposing methods
- Choosing and using collections
- Implementation pattern variations for use in building frameworks
Implementation Patterns will help programmers at all experience levels, especially those who have benefited from software patterns or agile methods. It will also be an indispensable resource for development teams seeking to work together more efficiently and build more maintainable software. No other programming book will touch your day-to-day work more often.
76 of 79 people found the following review helpful
Wrong title, outrageous price,
This review is from: Implementation Patterns (Paperback)The right title should be something like... "Kent Beck on writing readable code". The word "pattern" is way out of context, and will induce you to expect to find something way more precise, detailed and technical than then general advice that this book has to offer. This text could be considered like a chance to have a chat with Kent Beck discussing his ideas on the importance of writing readable code, and on general guidelines for code clarity and expressiveness. I have seen a review complaining about using Java for the examples, but the truth is, you will see very little code in this book. I am also not very sure of the idea target reader for this work. An experienced programmer has already figured out this general advice by himself, but the level of abstraction and detail is too terse to be useful to a beginner. I believe that more material, more detail and a more tutorial-like style could have made this book a worthwhile read for a junior developer. As it is , I have to say it,... Read more
45 of 49 people found the following review helpful
Good, Not Great,
This review is from: Implementation Patterns (Paperback)First off, this is a very thin tome. Which would make you expect a brisk pace, but instead, it's strangely just laconic. A lot of it is so elementary, it is kind of maddening. At one point, Kent tells us that if we need to fetch the time for a number of local variables, we ought use a local variable to 'freeze time.' The biggest problem here, however, is that when the book does turn to a topic that is worthy of some attention, the same paucity produces a feeling of futility: some of idioms, like collecting parameter, for instance, come up. No discussion of how it is a gateway to Visitor, nothing really interesting in fact, just a short little paragraph. Another section on parallel hierarchies ends with the author saying that he figured out how to solve his rather stilted example by introducing a CashFlow object. But he goes on without explaining it. Now, consider the fact that I believe books should ONLY take up topics like that one. This book is greatly confused about who it is for... Read more
11 of 11 people found the following review helpful
Not much material,
This review is from: Implementation Patterns (Paperback)Pros: Gave me a tiny bit more insight into how a programmer I admire (Beck) thinks. Also the hand-drawn diagrams were intuitivie and easy to grasp.
Cons: Not much material. Book could have been half of its already short length. You sort of got the sense Beck was running out of things to say - the chapter on Collections has graphs of the running times of various collections, and an Appendix is devoted to the code used to create the graphs.
› See all 28 customer reviews...
Online Sample Chapters
Table of Contents
Chapter 1: Introduction 1
Tour Guide 3
And Now... 4
Chapter 2: Patterns 5
Chapter 3: A Theory of Programming 9
Chapter 4: Motivation 19
Chapter 5: Class 21
Simple Superclass Name 23
Qualified Subclass Name 24
Abstract Interface 24
Abstract Class 26
Versioned Interface 27
Value Object 28
Inner Class 34
Instance-Specific Behavior 36
Pluggable Selector 40
Anonymous Inner Class 41
Library Class 41
Chapter 6: State 43
Direct Access 46
Indirect Access 47
Common State 47
Variable State 48
Extrinsic State 50
Local Variable 51
Collecting Parameter 55
Optional Parameter 56
Var Args 56
Parameter Object 57
Role-Suggesting Name 58
Declared Type 60
Eager Initialization 61
Lazy Initialization 62
Chapter 7: Behavior 63
Control Flow 64
Main Flow 64
Choosing Message 65
Double Dispatch 66
Decomposing (Sequencing) Message 67
Reversing Message 67
Inviting Message 68
Explaining Message 69
Exceptional Flow 70
Guard Clause 70
Checked Exceptions 72
Exception Propagation 73
Chapter 8: Methods 75
Composed Method 77
Intention-Revealing Name 79
Method Visibility 80
Method Object 82
Overridden Method 83
Overloaded Method 83
Method Return Type 84
Method Comment 85
Helper Method 85
Debug Print Method 86
Conversion Method 87
Conversion Constructor 88
Complete Constructor 89
Factory Method 90
Internal Factory 91
Collection Accessor Method 91
Boolean Setting Method 93
Query Method 93
Equality Method 94
Getting Method 95
Setting Method 96
Safe Copy 97
Chapter 9: Collections 99
Extending Collections 114
Chapter 10: Evolving Frameworks 117
Changing Frameworks without Changing Applications 117
Incompatible Upgrades 118
Encouraging Compatible Change 120
Appendix A: Performance Measurement 131
Canceling Overhead 136
General Programming 145
Downloadable Sample Chapter
Download a Sample Chapter from this book.
Book + eBook Bundle
Book Price $35.99
eBook Price $12.60
eBook formats included
This book includes free shipping!
This book includes free shipping!
Includes EPUB, MOBI, and PDF
About eBook Formats
This eBook includes the following formats, accessible from your Account page after purchase:
EPUBThe open industry format known for its reflowable content and usability on supported mobile devices.
MOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDFThe popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.