Join Amazon Prime and ship Two-Day for free and Overnight for $3.99. Already a member? Sign in.
Refactoring to Patterns and over 300,000 other books are available for Amazon Kindle – Amazon’s new wireless reading device. Learn more

 

or
Sign in to turn on 1-Click ordering.
 
 
More Buying Choices
50 used & new from $36.61

Have one to sell? Sell yours here
 
   
Refactoring to Patterns (Addison-Wesley Signature Series)
 
See larger image
 
Start reading Refactoring to Patterns on your Kindle in under a minute.

Don’t have a Kindle? Get yours here.
 
  

Refactoring to Patterns (Addison-Wesley Signature Series) (Hardcover)

by Joshua Kerievsky (Author)
4.1 out of 5 stars See all reviews (44 customer reviews)

List Price: $64.99
Price: $53.20 & this item ships for FREE with Super Saver Shipping. Details
You Save: $11.79 (18%)
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Want it delivered Monday, July 13? Choose One-Day Shipping at checkout. Details
32 new from $37.63 18 used from $36.61
Also Available in: List Price: Our Price: Other Offers:
Kindle Edition (Kindle Book) $38.39

Frequently Bought Together

Refactoring to Patterns (Addison-Wesley Signature Series) + Refactoring: Improving the Design of Existing Code (Addison-Wesley Object Technology Series) + Test Driven Development: By Example (Addison-Wesley Signature Series)
Price For All Three: $141.68

Show availability and shipping details


Customers Who Bought This Item Also Bought

xUnit Test Patterns: Refactoring Test Code (Addison-Wesley Signature Series)

xUnit Test Patterns: Refactoring Test Code (Addison-Wesley Signature Series)

by Gerard Meszaros
4.6 out of 5 stars (11)  $46.79
Test Driven Development: By Example (Addison-Wesley Signature Series)

Test Driven Development: By Example (Addison-Wesley Signature Series)

by Kent Beck
3.9 out of 5 stars (32)  $40.49
Working Effectively with Legacy Code (Robert C. Martin Series)

Working Effectively with Legacy Code (Robert C. Martin Series)

by Michael Feathers
4.9 out of 5 stars (28)  $49.28
Refactoring Databases: Evolutionary Database Design (Addison-Wesley Signature Series)

Refactoring Databases: Evolutionary Database Design (Addison-Wesley Signature Series)

by Scott W. Ambler
4.4 out of 5 stars (22)  $47.99
Patterns of Enterprise Application Architecture (Addison-Wesley Signature Series)

Patterns of Enterprise Application Architecture (Addison-Wesley Signature Series)

by Martin Fowler
4.4 out of 5 stars (61)  $51.99
Explore similar items

Editorial Reviews

Product Description

This is the eBook version of the printed book. If the print book includes a CD-ROM, this content is not included within the eBook version.

In 1994, Design Patterns changed the landscape of object-oriented development by introducing classic solutions to recurring design problems. In 1999, Refactoring revolutionized design by introducing an effective process for improving code. With the highly anticipated Refactoring to Patterns, Joshua Kerievsky has changed our approach to design by forever uniting patterns with the evolutionary process of refactoring.

This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs to, towards, or away from pattern implementations. Using code from real-world projects, Kerievsky documents the thinking and steps underlying over two dozen pattern-based design transformations. Along the way he offers insights into pattern differences and how to implement patterns in the simplest possible ways.

Coverage includes:

  • A catalog of twenty-seven pattern-directed refactorings, featuring real-world code examples
  • Descriptions of twelve design smells that indicate the need for this book’s refactorings
  • General information and new insights about patterns and refactoring
  • Detailed implementation mechanics: how low-level refactorings are combined to implement high-level patterns
  • Multiple ways to implement the same pattern—and when to use each
  • Practical ways to get started even if you have little experience with patterns or refactoring

Refactoring to Patterns reflects three years of refinement and the insights of more than sixty software engineering thought leaders in the global patterns, refactoring, and agile development communities. Whether you’re focused on legacy or “greenfield” development, this book will make you a better software designer by helping you learn how to make important design changes safely and effectively.

--This text refers to the Kindle Edition edition.

From the Publisher
In 1994, Design Patterns changed the landscape of object-oriented development by introducing classic solutions to recurring design problems. In 1999, Refactoring revolutionized design by introducing an effective process for improving code. With the highly anticipated Refactoring to Patterns, Joshua Kerievsky has changed our approach to design by forever uniting patterns with the evolutionary process of refactoring.

This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs to, towards, or away from pattern implementations. Using code from real-world projects, Kerievsky documents the thinking and steps underlying over two dozen pattern-based design transformations. Along the way he offers insights into pattern differences and how to implement patterns in the simplest possible ways.

Coverage includes:

A catalog of twenty-seven pattern-directed refactorings, featuring real-world code examples
Descriptions of twelve design smells that indicate the need for this book’s refactorings
General information and new insights about patterns and refactoring
Detailed implementation mechanics: how low-level refactorings are combined to implement high-level patterns
Multiple ways to implement the same pattern—and when to use each
Practical ways to get started even if you have little experience with patterns or refactoring

Refactoring to Patterns reflects three years of refinement and the insights of more than sixty software engineering thought leaders in the global patterns, refactoring, and agile development communities. Whether you’re focused on legacy or "greenfield" development, this book will make you a better software designer by helping you learn how to make important design changes safely and effectively.

See all Editorial Reviews


Product Details

  • Hardcover: 400 pages
  • Publisher: Addison-Wesley Professional (August 15, 2004)
  • Language: English
  • ISBN-10: 0321213351
  • ISBN-13: 978-0321213358
  • Product Dimensions: 9.4 x 7.2 x 1.2 inches
  • Shipping Weight: 2.2 pounds (View shipping rates and policies)
  • Average Customer Review: 4.1 out of 5 stars See all reviews (44 customer reviews)
  • Amazon.com Sales Rank: #142,436 in Books (See Bestsellers in Books)


What Do Customers Ultimately Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
Check the boxes next to the tags you consider relevant or enter your own tags in the field below.

Your tags: Add your first tag
 
Help others find this product — tag it for Amazon search
No one has tagged this product for Amazon search yet. Why not be the first to suggest a search for which it should appear?

 

Customer Reviews

44 Reviews
5 star:
 (25)
4 star:
 (5)
3 star:
 (10)
2 star:
 (2)
1 star:
 (2)
 
 
 
 
 
Average Customer Review
4.1 out of 5 stars (44 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
60 of 64 people found the following review helpful:
5.0 out of 5 stars A book I've been waiting for, September 5, 2004
By wiredweird "wiredweird" (Earth, or somewhere nearby) - See all my reviews
(TOP 100 REVIEWER)   
Kerievsky has done it. He has started to pull together anti-patterns (a.k.a. "bad smells"), refactorings, and patterns into one unified study. All three work well individually. Together, they make a powerful combination.

This isn't as rigorously analytic as the original Design Patterns book. I fully expect more theory-oriented writers to follow the trail blazed here. Instead, Kerievsky gives worked examples, in great detail. At every point, he starts with a code sample drawn from real life, complex enough to be interesting. Then, step by step, he shows the incremental changes made to transition from it's problematic start to its pattern-based end point. Experienced programmers may find this plodding and repetitive. Beginners, however, often have a hard time planning incremental changes and executing them. The author takes care to keep the code in working order at each increment, showing a clear path through the forest of possibilities. Some readers may even trace the path backwards, giving another look at how each change moves toward the end state. The worked examples are the real strength of this text.

This is a book for the software maintainer. In other words, it addresses 90% or 99% of the work that real programmers do. Just about every other software text on the market assumes that the project just started - the disks are empty and the compiler shrink-wrap is on the floor. I admit, that kind of programming is the most fun. It's just not realistic, though. Most work is rework, the kind demonstrated here.

Another great feature of this book is what it lacks: dogmatic harangues about methodology. It even keeps a skeptical attitude towards patterns, since heavyweight design techniques aren't always right for lightweight problems. Kerievsky mentions agile-ism, but doesn't make it a part of the process. He does, however, take the continuous testing idea from the eXtremists and work that into the demonstrations. Bravo! Hardware designers may wonder what the fuss is about, since thorough testing has been part of their culture for years. It's a happy novelty in much of the software world, though, and deserves to become standard practice.

My only problem with this book is that there isn't more of it. For example, constructor chaining is a great idea. There are two kind of chain, though. He shows the increasing parameter list, where simpler constructors supply default values for the more ones with more parameters. It's also possible to chain in decreasing order, where each constructor processes one parameter and passes on the simplified list. (What's good for constructors, of course, is also good for other collections of related methods.)

The book's ideal reader understands an OO language, uses subclassing regularly, and knows something about design patterns. That reader, with enough patience to follow the examples, will learn a lot. More experienced developers won't need the step by step approach, but may benefit from seeing multiple refactorings working together to solve a complex problem. It has my highest recommendation for any developer who really thinks about design and redesign.

//wiredweird
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
40 of 43 people found the following review helpful:
5.0 out of 5 stars Wonderful! Brings patterns into coding, not just designing, September 19, 2004
Based on its title alone I had high expectations for this book. It didn't disappoint. The book takes two of the most important advances of the past decade (patterns and refactoring) and puts them together into a whole that is definitely more than the sum of its parts.

I've read many good patterns books and have been applying patterns to how I think and talk about software since the original "Design Patterns" book in 1995. However, something was always missing. Through my consulting work, whenever I introduced patterns to a new team they would take quickly to the idea and patterns would become part of how they thought-but only when designing, not when coding. Since we spent more time coding than designing, patterns played less of a role than they could have.

This book does an excellent job of bringing patterns into coding, rather than relegating them just to design discussions. As the author points out, "patterns are best viewed in the light of refactoring and that they are destinations best reached by applying sequences of low-level refactorings."

This book has earned a permanent place on my bookshelf. That is, when it's not open beside me as I program. Very highly recommended!
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
35 of 39 people found the following review helpful:
3.0 out of 5 stars Over-complicated examples ruin a superb piece of work., November 7, 2004
This book is the only one of its kind that tries to use a patterns approach to refactoring. It is a good add-on to Martin Fowler's book. It's a very valuable contribution to the refactoring community. Kerievsky has a no-nonsense, down-to-earth approach to the subject of Patterns. However unlike Fowler who makes an effort to keep the code examples in his book as simple as possible, Kerievsky has made his examples over-complicated with all kinds of detailed finance domain references and the XML DOM. The example he uses to show how the Builder pattern simplifies creation of Composites is like a really heavy chapter on XML processing/generation.
The "Replace Conditional Logic with Strategy" is like a chapter on Investments / Loans. It really distracts the reader's attention from the pattern or refactoring.
This is a shame because it is impossible to write a good book on refactoring without nice examples. It is also a bit surprising that none of the other Amazon reviews mention this issue.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

4.0 out of 5 stars Good companion to the Design Patterns
I think this is a very good companion to the Design Patterns by the GoF. As the author stated in the book, the real joy of refactoring to the design patterns is to know the right... Read more
Published 2 months ago by Yuanchyuan Sheu

5.0 out of 5 stars Very good book
Refactoring written by Martin Fowler is the foundamental book, and this Refactoring to Patterns is higher level talking about refactoring. Read more
Published 7 months ago by Weiqun Shi

3.0 out of 5 stars Good ideas, but needs refactoring
There are a lot of nuggets of wisdom in the book, especially in the pragmatic approach the author takes to refactoring and patterns. Read more
Published 16 months ago by K. Krueger

5.0 out of 5 stars The Joy of Clean Up Reaches the Design Level
Clean up (refactoring) is fun. Clean up to the design level (patterns) is stunning. A very pragmatic introduction, down to the code and incredibly helpful. Read more
Published 18 months ago by ws__

5.0 out of 5 stars Combines Refactoring and Patterns
A master-piece and a must-read art-work. When I was studying on Martin Fowler's Refactoring to make my code more comprehensive and improve its clarification, I see, Martin... Read more
Published 18 months ago by Berk Acunas

5.0 out of 5 stars the best design pattern book
this is definitely the best book about design pattern I have ever read.

but this book is not telling you what a pattern is and how to use this pattern; instead, it... Read more
Published on February 21, 2007 by Sowen

5.0 out of 5 stars Great book, get it if you do design.
Well done book, and a valuable next-step in learning about design patterns. The original GOF presents them in isolated and rather sterile format and manner, this book adds a much... Read more
Published on February 6, 2007 by Gregory Guthrie

5.0 out of 5 stars Excellent book!
An EXCELLENT book! Very highly recommended. I like the fact that Josh has used real world code in all the refactoring to patterns examples.
Published on January 8, 2007 by Taru Jain

4.0 out of 5 stars Good extension to Fowler's: Refactoring
I read this book shortly after reading Martin Fowler's Refactoring book. I find this book to be a great extension to Fowlers basic priciples. Read more
Published on January 3, 2007 by Morten Petteroe

5.0 out of 5 stars Excellent reference book and a book I turn to frequently
I've looked over some of the other reviews on here and disagree with much of the criticism. This book is very easy to navigate and use and a book that will help teach you patterns... Read more
Published on December 4, 2006 by David Giacomo

Only search this product's reviews



Customer Discussions

 Beta (What's this?)
New! See all customer communities, and bookmark your communities to keep track of them.
This product's forum (1 discussion)
  Discussion Replies Latest Post
Got Questions About The Book? 0 April 2006
See all discussions...  
Start a new discussion
Topic:
First post:
Prompts for sign-in
  [Cancel]

   


Product Information from the Amapedia Community

Beta (What's this?)

Refactoring to Patterns (The Addison-Wesley Signature Series)

After a good deal of hard work, my colleagues and I at Industrial Logic have released Refactoring to Patterns Interactive -- http://industriallogic.com/rtpdata/ -- an interactive, web- and IDE-based online workshop, featuring 17 important refactorings ...

(Report this)
Created on Apr 17, 2006, last edited on Apr 26, 2006.

 Read More and Edit at Amapedia.com opens new browser window




Look for Similar Items by Category


Get to Know TomTom ONE XL

TomTom ONE XL at Amazon.com
With its widescreen, Bluetooth compatibility, and turn-by-turn directions, your new travel buddy is the TomTom ONE XL.

Shop all TomTom

 

Big Savings in Books

Bargain Books
Find great titles at fantastic prices in our Bargain Books Store.
 

Buy Three Books, Get a Fourth Free

4-for-3 Books
Order any four eligible books under $10 and get the lowest-price book free in our 4-for-3 Books Store. See more details.
 

Keep It Under Cover

Shop for Power Equipment Covers
Protect your outdoor power tools and equipment from the elements with these durable covers.

Shop all outdoor power and lawn equipment

 

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Where's My Stuff?

Shipping & Returns

Need Help?

Your Recent History

  (What's this?)
You have no recently viewed items or searches.

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.

Look to the right column to find helpful suggestions for your shopping session.

Continue shopping: Top Sellers

Conditions of Use | Privacy Notice © 1996-2009, Amazon.com, Inc. or its affiliates