Flylib.com
Refactoring Workbook
Refactoring Workbook
ISBN: 0321109295
EAN: 2147483647
Year: 2003
Pages: 146
Authors:
William C. Wake
BUY ON AMAZON
Main Page
Table of content
Copyright
Preface
What Is Refactoring?
What Are the Goals of This Book?
Who Is This Book For?
What Background Do You Need?
How to Use This Book
Can I Contact the Author?
Acknowledgments
Chapter 1. Roadmap
Overview
Section 1: Smells within Classes
Section 2: Smells between Classes
Section 3: Programs to Refactor
A Word on the Challenges
Section 1: Smells Within Classes
Chapter 2. The Refactoring Cycle
What Is Refactoring?
Smells Are Problems
The Refactoring Cycle
When Are We Done?
Inside a Refactoring
Challenges
Conclusion
Chapter 3. Measured Smells
Smells Covered
Comments
Long Method
Large Class
Long Parameter List
More Challenges
Conclusion
Interlude 1. Smells and Refactorings
Chapter 4. Names
Smells Covered
Type Embedded in Name (Including Hungarian)
Uncommunicative Name
Inconsistent Names
Chapter 5. Unnecessary Complexity
Smells Covered
Dead Code
Speculative Generality
Interlude 2. Inverses
Chapter 6. Duplication
Smells Covered
Magic Number
Duplicated Code
Alternative Classes with Different Interfaces
Challenges
Chapter 7. Conditional Logic
Smells Covered
Null Check
Complicated Boolean Expression
Special Case
Simulated Inheritance (Switch Statement)
Interlude 3. Design Patterns
Section 2: Smells Between Classes
Chapter 8. Data
Smells Covered
Primitive Obsession
Data Class
Data Clump
Temporary Field
Chapter 9. Inheritance
Smells Covered
Refused Bequest
Inappropriate Intimacy (Subclass Form)
Lazy Class
Chapter 10. Responsibility
Smells Covered
Feature Envy
Inappropriate Intimacy (General Form)
Message Chains
Middle Man
Challenges
Chapter 11. Accommodating Change
Smells Covered
Divergent Change
Shotgun Surgery
Parallel Inheritance Hierarchies
Combinatorial Explosion
Chapter 12. Library Classes
Smells Covered
Incomplete Library Class
Challenges
Interlude 4. Gen-A-Refactoring
Section 3: Programs to Refactor
Chapter 13. A Database Example
Course.java (Online at www.xp123.comrwb )
Offering.java
Schedule.java
Report.java
TestSchedule.java
TestReport.java
Chapter 14. A Simple Game
Development Episodes
Chapter 15. Catalog
Introduction
Path 1: Catalog.itemsMatching(query)
Path 2: Query.matchesIn(catalog)
Path 3: Process(catalog.data, query.data)
Conclusion
Chapter 16. Planning Game Simulator
Part 1 : Original Code
Part 2 : Redistributing Features
Removing Duplication, Selection Troubles, and a Few Burrs
Part 3 : Pushing the Code Further
Chapter 17. Where to Go from Here
Books
Admonitions
Exercises to Try
Web Sites
Section 4: Appendixes
Appendix A. Answers to Selected Questions
Chapter 2 . The Refactoring Cycle
Chapter 3 . Measured Smells
Interlude 1 . Smells and Refactorings
Chapter 4 . Names
Chapter 5 . Unnecessary Complexity
Chapter 6 . Duplication
Chapter 7 . Conditional Logic
Interlude 3 . Design Patterns
Chapter 8 . Data
Chapter 9 . Inheritance
Chapter 10 . Responsibility
Chapter 11 . Accommodating Change
Chapter 12 . Library Classes
Interlude 4 . Gen-A-Refactoring
Chapter 13 . A Database Example
Chapter 14 . A Simple Game
Chapter 15 . Catalog
Chapter 16 . Planning Game
Appendix B. Java Refactoring Tools
Appendix C. Inverses for Refactorings
Appendix D. Key Refactorings
Change Bidirectional Association to Unidirectional
Duplicate Observed Data
Extract Class
Extract Method
Move Field
Move Method
Replace Type Code with StateStrategy
Bibliography
Refactoring Workbook
ISBN: 0321109295
EAN: 2147483647
Year: 2003
Pages: 146
Authors:
William C. Wake
BUY ON AMAZON
Agile Project Management: Creating Innovative Products (2nd Edition)
Reliable Innovation
Phase: Speculate
Practice: Product Feature List
Phase: Adapt
Self-Organization Extensions
Certified Ethical Hacker Exam Prep
Determining Assessment Scope
Wireless LANs
Key Terms
Scanning
Title
C & Data Structures (Charles River Media Computer Engineering)
Preprocessing
Function
Storage of Variables
Recursion
Trees
The Java Tutorial: A Short Course on the Basics, 4th Edition
Summary
Code Samples
Numbers
Creating and Using Packages
AWT Components
Persuasive Technology: Using Computers to Change What We Think and Do (Interactive Technologies)
Overview of Captology
Computers as Persuasive Tools
Computers as Persuasive Social Actors
Credibility and Computers
Credibility and the World Wide Web
Comparing, Designing, and Deploying VPNs
Designing and Deploying L2TPv3-Based Layer 2 VPNs
Supporting IPv6 Traffic Transport in MPLS Layer 3 VPNs Using 6VPE
Summary
Designing and Implementing L2TP Compulsory/NAS-Initiated Tunnel Mode Remote Access VPNs
Designing and Building SSL Remote Access VPNs (WebVPN)
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