LU07.A03 - Refactoring oder nicht?
Ordnen Sie acht Änderungen ein: Refactoring, Bugfix, neues Feature, Optimierung oder Rewrite. Begründen Sie jede Einordnung in einem Satz.
Detaillierte Aufgabenstellung
Die entscheidende Frage bei jeder Zeile lautet: Ändert sich das nach aussen sichtbare Verhalten?
- Eine Variable
dwird inbestelldatumumbenannt. - In einer Preisberechnung wird
>durch>=ersetzt, weil der Rabatt ab 100 Franken gelten soll und bisher erst ab 100.01 wirkte. - Eine Liste von gesperrten Konten wird durch ein
setersetzt. - Eine 80-Zeilen-Route in Flask wird in Route, Service und Hilfsfunktionen aufgeteilt.
- Der Bericht bekommt zusätzlich eine Spalte «Rabatt».
- Eine
for-Schleife mitappendwird zur List Comprehension. - Das Modul
export.pywird gelöscht und mit einer anderen Bibliothek neu geschrieben. - Eine Funktion, die ihre Eingabeliste mutiert hat, gibt neu eine neue Liste zurück; alle Aufrufstellen werden angepasst.
Schritt-für-Schritt-Anleitung
- Entscheiden Sie zuerst nur: Verhalten gleich oder nicht?
- Ordnen Sie danach mit der Tabelle auf LU07a ein.
- Notieren Sie bei jedem Fall, welches Sicherheitsnetz Sie bräuchten, bevor Sie die Änderung machen.
- Fall 8 ist der interessanteste: Diskutieren Sie ihn zu zweit, bevor Sie die Lösung anschauen.
