000 05087nam a22004218a 4500
001 2003057903
003 AE-DuAU
005 20241127164617.0
008 050915s2004 mau b 001 0 eng
010 _a 2003057903
020 _a0321109295 (pbk.) :
_c34.99
040 _aDLC
_cDLC
042 _apcc
050 0 0 _aQA76.76.R42
_bW35 2003
069 _a06545208
090 _aQA 76.76 .R42 W35 2003
090 _aQA 76.76 .R42 W35 2003
100 1 _aWake, William C.,
_d1960-
_961231
245 1 0 _aRefactoring workbook /
_cWilliam C. Wake.
260 _aBoston, MA :
_bAddison-Wesley Professional,
_c2004.
263 _a0308
300 _ap. cm.
336 _2rdacontent
_atext
_btxt
337 _2rdamedia
_aunmediated
_bn
338 _2rdacarrier
_avolume
_bnc
504 _aIncludes bibliographical references and index.
505 0 _aRoadmap -- Smells within Classes -- Smells between Classes -- Programs to Refactor -- A Word on the Challenges -- Smells Within Classes -- The Refactoring Cycle -- Smells Are Problems -- The Refactoring Cycle -- When Are We Done? -- Inside a Refactoring -- Challenges -- Measured Smells -- Long Method -- Large Class -- Long Parameter List -- More Challenges -- Smells and Refactorings -- Names -- Type Embedded in Name (Including Hungarian) -- Uncommunicative Name -- Inconsistent Names -- Unnecessary Complexity -- Dead Code -- Speculative Generality -- Inverses -- Duplication -- Magic Number -- Duplicated Code -- Alternative Classes with Different Interfaces -- Challenges -- Conditional Logic -- Null Check -- Complicated Boolean Expression -- Special Case -- Simulated Inheritance (Switch Statement) -- Design Patterns -- Smells Between Classes -- Data -- Smells Covered -- Primitive Obsession -- Data Class -- Data Clump -- Temporary Field -- Inheritance -- Refused Bequest -- Inappropriate Intimacy (Subclass Form) -- Lazy Class -- Responsibility -- Feature Envy -- Inappropriate Intimacy (General Form) -- Message Chains -- Middle Man -- Challenges -- Accommodating Change -- Divergent Change -- Shotgun Surgery -- Parallel Inheritance Hierarchies -- Combinatorial Explosion -- Library Classes -- Incomplete Library Class -- Challenges -- Gen-A-Refactoring -- Programs to Refactor -- A Database Example -- Course.java (Online at www.xp123.com/rwb) -- Offering.java -- Schedule.java -- Report.java -- TestSchedule.java -- TestReport.java -- A Simple Game -- Development Episodes -- Catalog -- Catalog.itemsMatching(query) -- Query.matchesln(catalog) -- Process(catalog.data, query.data) -- Planning Game Simulator -- Original Code -- Code (Online at www.xp123.com/rwb) -- Table.java -- Background.java -- Card.java -- Challenges -- Redistributing Features -- Five Whys -- Removing Duplication, Selection Troubles, and a Few Burrs -- Pushing the Code Further -- Admonitions -- Build Refactoring into Your Practice -- Build Testing into Your Practice -- Get Help from Others -- Exercises to Try -- Smell Scavenger Hunt/Smell of the Week -- Re-Refactor -- Just Refactor -- Inhale/Exhale -- Defactoring/Malfactoring -- Refactoring Kata -- Java Refactoring Tools -- Inverses for Refactorings -- Key Refactorings.
520 _aAs a programmer, you need to be able to recognize and improve problematic code, so the program remains in a working state throughout the software lifecycle. Refactoring -- the art of improving the design of existing code safely -- provides an efficient, reliable system for bringing order to the chaos, and one that keeps the surprises to a minimum! Refactoring can be difficult to learn, but Refactoring Workbook, by consultant William C. Wake, presents the material in an easy-learning format that makes learning enjoyable and effective. For many, the obstacle to learning refactoring is identifying the "smells" -- the potential problem areas -- found in code. Instead of having you read about the smells, Refactoring Workbook makes sure you understand them. You'll solve a carefully assembled series of problems, and you'll find yourself learning at a deeper level and arriving at a few insights of your own. Wake uses the workbook method -- a learning-focused approach that forces you to apply the techniques presented in the book -- to help you learn and apply the most important refactoring techniques to your code and, as a side benefit, helps you to think more about creating great code even when you're not refactoring.
650 0 _aSoftware refactoring.
_977211
852 _9p34.99
_y02-28-2004
907 _a14400
_b08-06-10
_c08-06-10
942 _cBOOK
_00
998 _aaudmc
_b02-28-04
_cm
_da
_e-
_feng
_gmau
_h0
905 _aWilliam C. Wake is an independent software consultant, coach, and trainer who has been programming for over 20 years. He has previously worked for Capital One Financial, MCI/WorldCom, VTLS, Inc., and others.
935 _aQ/R 12796-NOV-1
945 _g0
_i645960
_j0
_laudmc
_nCopy Type:01 - Books
_o-
_p128.59
_q-
_r-
_s-
_t1
_u0
_v0
_w0
_x0
_yi10201191
_z08-06-10
999 _c14400
_d14400