Refactoring: Improving the Design of Existing Code (2nd Edition) product image

Refactoring: Improving the Design of Existing Code (2nd Edition)

(5/5)
Review by Joshua Morris on
View on Amazon

Review

Fowler and Beck’s second edition of Refactoring is still the book I hand to engineers when we’re about to touch legacy code. The catalog of refactorings—Extract Function, Introduce Parameter Object, Replace Conditional with Polymorphism—gives you named moves with mechanics, motivations, and before/after examples you can translate to any language. Over the last year we’ve used it to modernize a decade-old Java service and a pile of TypeScript reducers; the step-by-step recipes paired with tests kept us shipping safely instead of rewriting from scratch. The newer chapters address lambdas, streams, and microservices, and the online catalog makes it easy to search for a particular smell mid-PR. If you refactor as part of your day job (and you should), this belongs on your desk.

✓ Pros

  • Systematic approach to refactoring
  • Clear, practical examples you can apply immediately
  • Step-by-step approach makes complex tasks manageable
  • Safety nets ensure you don't break anything
  • Updated patterns for modern codebases

✗ Cons

  • Dense reference style—best read alongside hands-on work

Specifications

Pages480
Edition2nd
PublisherAddison-Wesley Professional
LanguageEnglish
FormatHardcover
Isbn13978-0134757599
Date First AvailableNovember 19, 2018