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
Identifying and Managing Project Risk: Essential Tools for Failure-Proofing Your Project
Why Project Risk Management?
Planning for Risk Management
Identifying Project Schedule Risk
Quantifying and Analyzing Project Risk
Monitoring and Controlling Risky Projects
Oracle Developer Forms Techniques
Timers and Displaying a Clock
Ordering by Foreign Key Items in Forms
Window Management in Forms
Myths About the Form Filename, Form Module Name , and Form ID
Techniques for Querying and Updating New Data Sources in Forms Based on Objects
Managing Enterprise Systems with the Windows Script Host
Introduction
Shell Operations
Logon Scripts and Scheduling
File Operations
Registry Operations
Microsoft Windows Server 2003(c) TCP/IP Protocols and Services (c) Technical Reference
Internet Protocol (IP) Basics
Internet Protocol (IP) Addressing
Internet Protocol (IP) Routing
Transmission Control Protocol (TCP) Connections
Dynamic Host Configuration Protocol (DHCP) Server Service
Wireless Hacks: Tips & Tools for Building, Extending, and Securing Your Network
Hack 19. Get Google Maps on Your Mobile Phone
Hack 23. Find All Available Wireless Networks
Hack 61. Unwire Your Pistol Mouse
Section A.7. 900 MHz: Low Speed, Better Coverage
Appendix B. Wireless Hardware Guide
AutoCAD 2005 and AutoCAD LT 2005. No Experience Required
Basic Commands to Get Started
Setting Up a Drawing
Gaining Drawing Strategies: Part 1
Using Layers to Organize Your Drawing
Managing External References
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