num_pages: 416
description: Most software professionals spend much of their time working with someone else's brutally imperfect code. When you consider the serious constraints that legacy code was created under it's no surprise it looks so bad. The question is: now what? In Brutal Refactoring Michael Feathers starts with code bases as they are not as we pretend them to be - and shows how to aggressively reshape them to make them maintainable and amenable to further development.Brutal Refactoring takes the next steps beyond all previous refactoring books including Feathers' own highly-praised Working Effectively with Legacy Code. Feathers shares new insights reflecting all he's learned in the eleven years since that book and offers the first detailed practical advice on the unique nuances of system-wide refactoring.Brutal Refactoring demonstrates Feathers' aggressive refactoring techniques through a series of exceptionally realistic case examples introducing tactical recipes and high-level strategies for overcoming a wide range of legacy code challenges. Coverage includes:Making intractable code understandableComponentizing software factory and repository hubsSensing variablesUsing in vitro test harnesses and production togglesMining runtimesDecomposing heavily conditional codeProfiling good and bad code basesDetecting and managing code hotspotsUncovering patterns in code duplicationPerforming domain discoveryManaging boundaries between object-oriented and procedural codeUsing the Twist method to extract classes and much more
language: English
title: Brutal Refactoring: More Working Effectively with Legacy Code
publisher: Addison-Wesley Educational Publishers Inc