Flylib.com
Refactoring to Patterns
Refactoring to Patterns
ISBN: 0321213351
EAN: 2147483647
Year: 2003
Pages: 103
Authors:
Joshua Kerievsky
BUY ON AMAZON
Main Page
Table of Contents
Copyright
Advance Praise for Refactoring to Patterns
The Addison-Wesley Signature Series
The Addison-Wesley Signature Series Signers Kent Beck and Martin Fowler
Foreword
Preface
What Is This Book About?
What Are the Goals of This Book?
Who Should Read This Book?
What Background Do You Need?
How to Use This Book
The History of This Book
Standing on the Shoulders of Giants
Acknowledgments
Chapter 1. Why I Wrote This Book
Over-Engineering
The Patterns Panacea
Under-Engineering
Test-Driven Development and Continuous Refactoring
Refactoring and Patterns
Evolutionary Design
Chapter 2. Refactoring
What Is Refactoring?
What Motivates Us to Refactor?
Many Eyes
Human-Readable Code
Keeping It Clean
Small Steps
Design Debt
Evolving a New Architecture
Composite and Test-Driven Refactorings
The Benefits of Composite Refactorings
Refactoring Tools
Chapter 3. Patterns
What Is a Pattern?
Patterns Happy
There Are Many Ways to Implement a Pattern
Refactoring to towards and away from Patterns
Do Patterns Make Code More Complex?
Pattern Knowledge
Up-Front Design with Patterns
Chapter 4. Code Smells
Duplicated Code
Long Method
Conditional Complexity
Primitive Obsession
Indecent Exposure
Solution Sprawl
Alternative Classes with Different Interfaces
Lazy Class
Large Class
Switch Statements
Combinatorial Explosion
Oddball Solution
Chapter 5. A Catalog of Refactorings to Patterns
Format of the Refactorings
Projects Referenced in This Catalog
A Starting Point
A Study Sequence
Chapter 6. Creation
Replace Constructors with Creation Methods
Move Creation Knowledge to Factory
Encapsulate Classes with Factory
Introduce Polymorphic Creation with Factory Method
Encapsulate Composite with Builder
Inline Singleton
Chapter 7. Simplification
Compose Method
Replace Conditional Logic with Strategy
Move Embellishment to Decorator
Replace State-Altering Conditionals with State
Replace Implicit Tree with Composite
Replace Conditional Dispatcher with Command
Chapter 8. Generalization
Form Template Method
Extract Composite
Replace OneMany Distinctions with Composite
Replace Hard-Coded Notifications with Observer
Unify Interfaces with Adapter
Extract Adapter
Replace Implicit Language with Interpreter
Chapter 9. Protection
Replace Type Code with Class
Limit Instantiation with Singleton
Introduce Null Object
Chapter 10. Accumulation
Move Accumulation to Collecting Parameter
Move Accumulation to Visitor
Chapter 11. Utilities
Chain Constructors
Unify Interfaces
Extract Parameter
Afterword
References
Inside Front Cover
List of Refactorings
Refactoring Directions
Inside Back Cover
Code Smells
A Study Sequence
Refactoring to Patterns
ISBN: 0321213351
EAN: 2147483647
Year: 2003
Pages: 103
Authors:
Joshua Kerievsky
BUY ON AMAZON
C++ GUI Programming with Qt 3
Implementing the Edit Menu
Translating Applications
Providing Online Help
Using Qt Assistant for Powerful Online Help
Installing Qt/Windows
Excel Scientific and Engineering Cookbook (Cookbooks (OReilly))
Creating Your Own Objects in VBA
Importing Data from Access Databases
Forecasting
Using Classical Methods for Solving Equations
Recruiting Solver to Iteratively Solve Finite Difference Equations
Mapping Hacks: Tips & Tools for Electronic Cartography
Hack 7. Will the Kids Barf?
Hack 12. Create a Distance Grid in Excel
Hack 45. Extract a Spatial Model from Wikipedia
Hack 76. Explore the Effects of Global Warming
Hacks 93-100
Google Maps Hacks: Tips & Tools for Geographic Searching and Remixing
Hack 22. Witness the Effects of a Nuclear Explosion
Hack 41. How Google Maps Got Me Out of a Traffic Ticket
Hack 42. Get More out of What You Read
Hack 59. Show Lots of StuffQuickly
Hack 62. Find the Latitude and Longitude of a Street Address
The Lean Six Sigma Pocket Toolbook. A Quick Reference Guide to Nearly 100 Tools for Improving Process Quality, Speed, and Complexity
Working with Ideas
Value Stream Mapping and Process Flow Tools
Data Collection
Identifying and Verifying Causes
Reducing Lead Time and Non-Value-Add Cost
Digital Character Animation 3 (No. 3)
Designing a Character
Finalizing Your Design
Beyond Walking
Conclusion
Chapter Ten. Directing and Filmmaking
flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net
Privacy policy
This website uses cookies. Click
here
to find out more.
Accept cookies