Einfache Refactorings – Teil 4

Häufig kann der Code mit einem simplen Extract Method Refactoring verständlicher gemacht werden. Die zusätzliche Methode ermöglicht es dem Leser, allein anhand des Methodennamens zu verstehen, was der Code macht. Eine gute Ergänzung ist häufig das Introduce Parameter Refactoring. Dadurch werden alle Eingaben einer Methode in der Parameterliste sichtbar, was ebenfalls die Verständlichkeit erhöht. Einen anderen Fokus hat das Move to Another Type Refactoring. Durch dieses Refactoring werden Aspekte getrennt, dadurch dass ein Teil der Aspekte in eine andere Klasse verschoben wird. Automatisiert mit Toolunterstützung durchgeführt ist das Risiko gering, die Funktionalität zu zerstören.

Read More


Legacy Code – Die Herausforderungen

Wo liegt die größte Herausforderung beim Umgang mit Legacy Code? Über Twitter habe ich kürzlich gefragt, was die größte Herausforderung im Umgang mit Legacy Code ist. Nun ist Twitter bekanntermaßen darauf ausgelegt, nur knappe Antworten zu geben. Da jedoch mehr als ein Dutzend Antworten eingetroffen sind, will ich hier berichten, wo Entwickler Herausforderungen beim Umgang mit Legacy Code sehen. Die „Umfrage“ ist weit entfernt davon, repräsentativ zu sein. Ich glaube, die Antworten weisen dennoch auf die typischen Herausforderungen hin. Sollte Ihre persönliche Herausforderung nicht genannt sein, freue ich mich über Ihren Kommentar!

Read More


Einfache Refactorings – Teil 3

Ein weiteres Anwendungsgebiet für das Extract Method Refactoring sind Bedingungen von Verzweigungen. Die Bedingung einer if-Anweisung erschließt sich beim Lesen manchmal erst, wenn wir den Inhalt der Verzweigung lesen. Durch ein Extract Method Refactoring kann die Bedingung, mit einem Namen versehen, ausgelagert werden. Neben der Verbesserung der Lesbarkeit kann dies auch eine bedeuten, eine DRY Verletzung zu beheben. Weiters befasst sich der Beitrag damit, die Eingaben einer Methode explizit sichtbar zu machen. Dazu werden die benötigten Werte mittels Introduce Parameter Refactoring in die Parameterleiste gezogen.

Read More


Einfache Refactorings – Teil 2

Nicht selten ist die Parameterliste einer Method über die Jahre etwas zu lang geworden. Manchmal stehen die Parameter in einem sinnvollen Zusammenhang zueinander, so dass man sie zu einer Klasse zusammenfassen kann. Das ist nicht immer der Fall, vor allem, wenn eine Methode für mehr als einen Aspekt zuständig ist. In solchen Fällen werden häufig einzelne Parameter oder Gruppen von Parametern für die unterschiedlichen Aspekte der Methode benötigt. In dem Fall kann es helfen, zunächst die Aspekte zu trennen. Der Beitrag befasst sich mit dem Extract Class from Parameters Refactoring, mit dem die Parameter einer Methode zu einer neuen Klasse zusammengefasst werden. Sollte dies schwer fallen, weil in der Methode Aspekte vermischt sind, hilft oft ein Extract Method Refactoring dabei,...

Read More


Einfache Refactorings – Teil 1

In dieser Reihe von Blogbeiträgen stelle ich Ihnen sogenannte Einfache Refactorings vor. Im Gegensatz zu Komplexen Refactorings sind diese vollständig toolgestützt durchführbar. Das bedeutet, dass Sie die Veränderungen am Quellcode automatisiert mithilfe einer IDE, z.B. Microsoft Visual Studio oder JetBrains Rider, ausführen. Vielleicht setzen Sie auch ein zusätzliches Refactoring Tool ein wie JetBrains ReSharper. Durch Einsatz eines solchen Werkzeugs bleibt das Verhalten der Anwendung beim Refactoring erhalten. Solange Sie die Refactorings konsequent ausschließlich mit solchen Werkzeugen ausführen und nicht per Hand eingreifen, ist die Wahrscheinlichkeit sehr hoch, dass sich der Code hinterher genauso verhält wie vor dem Refactoring. Der erste Beitrag der Serie beschreibt...

Read More