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
Database Modeling with MicrosoftВ® Visio for Enterprise Architects (The Morgan Kaufmann Series in Data Management Systems)
Getting Started
ORM Constraints
Mapping ORM Models to Logical Database Models
Conceptual Model Reports
Editing Logical Models”Advanced Aspects
Agile Project Management: Creating Innovative Products (2nd Edition)
Project Size
Phase: Envision
Individual Performance
Practice: Workload Management
Phase: Adapt
The .NET Developers Guide to Directory Services Programming
Returning Many Results with Paged Searches
Extended DN Queries
Collection Class Usage
Choosing an Object Class
Authentication
C++ GUI Programming with Qt 3
Signals and Slots in Depth
Loading and Saving
Graphics with QCanvas
Translating Applications
Installing Qt/Windows
Microsoft WSH and VBScript Programming for the Absolute Beginner
Constants, Variables, and Arrays
Conditional Logic
Processing Collections of Data
Using the Windows Registry to Configure Script Settings
Combining Different Scripting Languages
GDI+ Programming with C#
GDI+: The Next-Generation Graphics Interface
The Graphics Class
Encoder Parameters and Image Formats
A Brief History of Printing with Microsoft Windows
The PrintDocument and Print Events
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