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
Beginners Guide to DarkBASIC Game Programming (Premier Press Game Development)
Introduction to Computer Programming
Looping Commands
Playing Some Tunes CD Audio, MIDI and MP3 Music
Fundamentals of 3D Graphics Programming
Epilogue
Crystal Reports 9 on Oracle (Database Professionals)
Oracle Structures
Oracle SQL
Other Tips
Data Dictionary Report
Appendix B Functions
High-Speed Signal Propagation[c] Advanced Black Magic
Ideal Transmission Line
Scaling Multimode Fiber-Optic Cables
Effect of Split Termination
IBIS: History and Future Direction
Appendix E. erf( )
GO! with Microsoft Office 2003 Brief (2nd Edition)
GO! with Help
Business Running Case
Objective 4. Open and Edit an Existing Query
You and GO!
Concepts Assessments
Pocket Guide to the National Electrical Code(R), 2005 Edition (8th Edition)
Article 330 Metal-Clad Cable Type MC
Article 334 Nonmetallic-Sheathed Cable Types NM, NMC, and NMS
Article 645 Information Technology Equipment
Example No. D3 Store Building
Example No. D5(a) Multifamily Dwelling Served at 208Y/120 Volts, Three Phase
Junos Cookbook (Cookbooks (OReilly))
Activating the Router Configuration
Controlling SNMP Access to the Router
Setting the Date and Time on the Router Manually
Dealing with Nonconfigurable Interfaces
Viewing Multicast Routes
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