[Book Review] Working Effectively with Legacy Code
“Working Effectively with Legacy Code” is surprisingly more about test-automation. Unit testing, in particular. The author advocates for “Cover & Modify” as opposed to the “Edit & Pray” industry standard.
The book also talks about a variety of refactoring techniques that are very useful for legacy systems.
What it doesn’t go much into is both project setup and software analysis (static & dynamic). This is probably because these are big topics of their own for typical systems, let alone legacy ones.
The author also goes into detail into some of the major issues and what approaches are practical and why. This is incredibly important to understand at least the limitations of some methods instead of learning the hard way years later.
“Refactoring” is an excellent complement to this book, and a new edition was recently released too.