Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
se:refactoring [2010-01-18 11:31] 127.0.0.1 Externe Bearbeitung |
se:refactoring [2014-04-05 11:42] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Refactoring ====== | ||
- | * beim Refactoring müssen ggfs. auch die Codekommentare angepasst werden | ||
- | ===== Anzeichen für verbesserungswürdigen Code ===== | ||
- | **nach {[quellen:Goodliffe2008|S. 282ff.]}** | ||
- | * viele große Klassen | ||
- | * kryptische/irreführende Funktionsnamen | ||
- | * keine Struktur erkennbar | ||
- | * es gibt duplizierten Code | ||
- | * es gibt starke Kopplung | ||
- | * Daten werden immer wieder hin- und herkonvertiert | ||
- | * überladene, sich häufig ändernde APIs | ||
- | * private Implementierungen werden über öffentliche APIs zugänglich gemacht (um Hacks zu ermöglichen) | ||
- | * der Code strotzt vor Workarounds und Quick Fixes | ||
- | * Funktionen haben lange Listen von Parametern | ||
- | * es gibt Codeteile, an die sich niemand herantraut | ||
- | * neue Features werden ohne entsprechende Dokumentation hinzugefügt | ||
- | * beim Kompilieren gibt es viele Warnungen | ||
- | * es gibt Kommentare wie "Don't touch this" |