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
Absolute Beginner[ap]s Guide to Project Management
Project Plan Checklist
Developing the Project Schedule
Why Do This? Its Too Much Work
The Common Sources of Project Risk
Are You Sure Its a Risk?
Making Sense of Change Management: A Complete Guide to the Models, Tools and Techniques of Organizational Change
Part I - The Underpinning Theory
Individual change
Mergers and acquisitions
Cultural change
IT-based process change
The Java Tutorial: A Short Course on the Basics, 4th Edition
What Is a Message?
How to Throw Exceptions
Synchronizing Thread
Using the Streams
Appendix C. Collections
Wireless Hacks: Tips & Tools for Building, Extending, and Securing Your Network
Hack 29. Detect Networks with Kismet
Hack 33. Watch Network Traffic
Hack 42. Secure Your Linux Network with WPA
Hack 59. Scan for Wireless Networks Automatically
Hack 98. Align Antennas at Long Distances
Lean Six Sigma for Service : How to Use Lean Speed and Six Sigma Quality to Improve Services and Transactions
Getting Faster to Get Better Why You Need Both Lean and Six Sigma
Success Story #3 Fort Wayne, Indiana From 0 to 60 in nothing flat
Phase 4 Performance and Control
Raising the Stakes in Service Process Improvement
Designing World-Class Services (Design for Lean Six Sigma)
.NET System Management Services
.NET Framework and Windows Management Instrumentation
Using the System.Management Namespace
Handling WMI Events
The WMI Schema
WMI Security
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