swc


M. M.
Karten
11
Lernende
3
Sprache
Deutsch
Kategorie
Informatik
Stufe
Universität
Erstellt / Aktualisiert
03.02.2019 / 17.04.2022

Lernkarten

Feature Envy

Eine Methode, die mehr Interesse an einer anderen Klasse zeigt, als an der eigenen. Zu erkennen z.B. durch viele getter Aufrufe bei Objekten anderer Klassen.

Switch Statement

Refactoring: Switch Statements kommen oft mehrfach als Code-Duplikate vor. Refactoring zu State-/Strategy-Pattern.

Parallel Inheritance Hierarchies

Refactoring: Spezialfall der Shotgun Surgery. Trotzdem OK z.B. in den Patterns Iterator oder Abstract Factory

Divergent Change

Refactoring: Divergent change occurs when one class is commonly changed in different ways for different reasons.

Shotgun Surgery

Refactoring: Gegenteil von Divergent Change. Jedesmal wenn man eine Änderung am Code vornimmt sind auch viele kleine Änderungen an anderen Stellen notwendig.

Lazy Class

Refactoring: Each class you create costs money to maintain and understand. A class that isn’t doing enough to pay for itself should be eliminated.

Move Method

Puzzle Refactorings: Wenn eine Methode mehr auf Daten einer fremden Klasse als auf die der eigenen Klasse zugreift, ist sie ein guter Kandidat um in die andere Klasse verschoben zu werden.

Extract Method

Puzzle Refactorings: Code-Fragmente in eigene Methoden fassen. Grosse Methoden in kleine aufteilen

Benefits of Refactoring

Refactoring Workflow

Refactoring: Two hats

Lernen