1. Einleitung

Posted on November 7th, 2006 by Muhamed.
Kategorie: Allgemein.

In dieser Seminarausarbeitung werden, basierend auf [L1], das Refactoring vorgestellt und dessen Anwendungsgebiete aufgezeigt. Es wird erklärt warum man refaktorisiert und das Vorgehen im Allgemeinen beschrieben.
Anhand eines Beispiels werden einzelne Transformationen aus dem Katalog von Martin Fowler genauer erläutert und durchgeführt.
Das Zusammenspiel von Refactoring und Code Reviews wird auch ein Thema in dieser Seminarausarbeitung sein.
Anschließend wird auf die Schwierigkeiten und Grenzen von Refactoring hingewiesen, und auf die Probleme in der Praxis eingegangen.

Software, die benutzt wird, muss ständig an die sich ändernden Anforderungen angepasst werden, d.h. sie muss gewartet werden. Leider führt Software-Wartung in der Regel zu Degeneration der Struktur der Software. Weitere Änderungen werden immer schwieriger, bis schließlich nur noch eine Neuimplementierung sinnvoll ist.
Eine Möglichkeit, dieser „natürlichen“ Degeneration der Software-Struktur entgegenzuwirken, ist die kontinuierliche Software-Restrukturierung, die dafür sorgt, dass die Software jederzeit verständlich und änderbar bleibt. Bei objektorientierter Software spricht man anstelle von Restrukturierung auch von Refactoring (engl. Refaktorisierung).