Zähmen von Legacy Code: Eine Zusammenfassung von Michael Feathers' "Working Effectively with Legacy Code"

2025-09-09
Zähmen von Legacy Code: Eine Zusammenfassung von Michael Feathers'

Dieser Artikel fasst die Kerngedanken von Michael Feathers' klassischem Buch "Working Effectively with Legacy Code" zusammen. Das Buch argumentiert, dass der Kern des Problems von Legacy Code das Fehlen von Tests ist. Um Legacy Code sicher zu ändern, müssen zuerst Tests hinzugefügt werden. Dies ist eine Herausforderung, da das Hinzufügen von Tests eine Änderung des Codes erfordert, was ein Paradoxon schafft. Das Buch beschreibt die Schritte zum Identifizieren von Änderungspunkten (Seams), zum Aufbrechen von Abhängigkeiten, zum Schreiben von Tests und zum Refactoring, zusammen mit inkrementellen Testtechniken (Sprout und Wrap) und einer Technik zum schnellen Verständnis von Code (Scratch Refactoring). Der Autor betont die Bedeutung von Unit-Tests und stellt Charakterisierungstests vor, um das Verhalten des vorhandenen Codes zu erfassen. Schließlich rät der Artikel davon ab, direkt von Bibliotheks-Implementierungen abhängig zu sein, um die Wartungskosten zu senken.

Entwicklung Legacy Code