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
MySQL Stored Procedure Programming
Conclusion
Advantages of Stored Programs
Disadvantages of Stored Programs
Conclusion
Exception Handling
SQL Tips & Techniques (Miscellaneous)
Understanding SQL Basics and Creating Database Files
Using Keys and Constraints to Maintain Database Integrity
Working with Comparison Predicates and Grouped Queries
Understanding Transaction Isolation Levels and Concurrent Processing
Writing External Applications to Query and Manipulate Database Data
Kanban Made Simple: Demystifying and Applying Toyotas Legendary Manufacturing Process
Introduction to Kanban
Training
Appendix D Organizational Changes Required for Kanban
Appendix F Implementation in Large Plants
Appendix I Case Study 2: Rubber Extrusion Plant
Secure Programming Cookbook for C and C++: Recipes for Cryptography, Authentication, Input Validation & More
Converting a String to a Numeric Type
Introduction
Writing Your Own Algorithm
Using a Function to Create Objects (a.k.a. Factory Pattern)
Hardcoding a Unicode String
What is Lean Six Sigma
The Four Keys to Lean Six Sigma
Key #1: Delight Your Customers with Speed and Quality
Key #2: Improve Your Processes
The Experience of Making Improvements: What Its Like to Work on Lean Six Sigma Projects
Six Things Managers Must Do: How to Support Lean Six Sigma
Digital Character Animation 3 (No. 3)
Conclusion
Animation Interfaces
The Language of Movement
Posing the Body Naturally
Acting Technique
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