[Video] Refactoring C# Legacy Code – HerbstCampus 2016
Beim diesjährigen HerbstCampus in Nürnberg habe ich einen Vortrag zum Thema Refactoring von C# Legacy Code gehalten. Hier finden Sie das Video des Vortrags.
Beim diesjährigen HerbstCampus in Nürnberg habe ich einen Vortrag zum Thema Refactoring von C# Legacy Code gehalten. Hier finden Sie das Video des Vortrags.
Beim diesjährigen HerbstCampus in Nürnberg habe ich meinen Vortrag Wandelbarkeit wieder herstellen – Refactoring von C# Legacy Code gehalten. Hier finden Sie die Folien zum Vortrag.
Mit der Mikado Methode lassen sich komplexe Refactorings Schritt für Schritt durchführen. Gewinnen Sie die Kontrolle über Ihre Codebasis zurück!
Mit der Mikado Methode lassen sich komplexe Refactorings in kleine Schritte zerlegen. Die Methode basiert zum einen darauf, durch Experimente herauszufinden, welche Voraussetzungen erfüllt werden müssen, bevor die eigentlich gewünscht Änderung umgesetzt werden kann. Zum anderen wird die Versionskontrolle dazu verwendet, immer wieder zu einem bekannten Stand der Codebasis zurückzukehren. Die einzelnen Experimente werden immer wieder entfernt, da sie lediglich dem Erkenntnisgewinn dienen.
Im ersten Schritt ist durch eine experimentelle Vorgehensweise ein Mikado Graph entstanden. Es wurde jeweils naiv versucht, die erforderlichen Änderungen am Code durchzuführen. Alle Probleme, die sich bei diesen Experimenten gezeigt haben, sind als Vorbedingungen für das Mikado Ziel in den Mikado Graph übernommen worden. Da die einzelnen Vorbedingungen aufeinander aufbauen, sich also in Abhängigkeiten befinden, enthält der Mikado Graph nicht nur die Vorbedingungen, sondern stellt auch die Abhängigkeiten dar. Lesen Sie im 2. Teil nun mehr zu den Details der Mikado Methode.
Dies ist der erste Teil einer Beitragsserie über komplexe Refactorings an Legacy Code Projekten. Er erläutert, welche Herausforderung sich bei komplexen Änderungen zeigen. Anhand einer Bilderserie wird verdeutlich, zu welchen Problemen die übliche Vorgehensweise führt. Im Anschluss wird gezeigt, wie die Herausforderung mit Hilfe der Mikado Methode angegangen werden kann.