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
Documenting Software Architectures: Views and Beyond
P.1. The Role of Architecture
Elements, Relations, and Properties of the Module Viewtype
Peer-to-Peer Style
ECS Software Architecture View Template
Allocation Deployment View
Ruby Cookbook (Cookbooks (OReilly))
Converting Between Time Zones
Finding the Day of the Week
Controlling Access by Making Methods Private
Using a WSDL File to Make SOAP Calls Easier
Handling an Exception
Microsoft VBScript Professional Projects
Project Case Study Desktop Customization and Deployment
Scheduling Disk Maintenance
Mapping Network Printers and Disks
Project Case Study Creating a Centralized Report Management Station
Building the Registration and Configuration Settings Page
Web Systems Design and Online Consumer Behavior
Chapter V Consumer Complaint Behavior in the Online Environment
Chapter VII Objective and Perceived Complexity and Their Impacts on Internet Communication
Chapter XIV Product Catalog and Shopping Cart Effective Design
Chapter XVI Turning Web Surfers into Loyal Customers: Cognitive Lock-In Through Interface Design and Web Site Usability
Chapter XVII Internet Markets and E-Loyalty
Programming .Net Windows Applications
Projects and Solutions
Labels and Buttons
Date and Time Values
Timer Component
Exceptions
FileMaker 8 Functions and Scripts Desk Reference
Date Functions
Get(DocumentsPath)
Get(SystemDrive)
Get(WindowName)
TableNames()
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