Working Effectively with Legacy Code
What can be said about Michael Feathers’ Working Effectively with Legacy Code that has not already been said?
This book, along with a few others (for example, Code Complete
and Refactoring: Improving the Design of Existing Code
) belong on every programmer’s bookshelf.
Michael defines “Legacy Code” as “Code without tests”. In this book, he shows you examples of HOW to find the “seams” in your code, so that you can add tests, in order to refactor your code and/or extend your application without breaking your code.
Code refactoring is the process of changing a computer program’s internal structure without modifying its external functional behavior or existing functionality.
If you work at ALL with legacy (brownfield) applications, you need to read this book.