Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | Nächste Überarbeitung Beide Seiten der Revision | ||
se:lessonslearned [2010-05-03 10:42] 127.0.0.1 Externe Bearbeitung |
se:lessonslearned [2012-03-22 20:22] stefan |
||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
* beim Entwickeln einer Klasse stellt man fest, dass sie am Besten von zwei Basisklassen erben sollte, um ihre Funktionalität zu implementieren -> die Klasse hat wahrscheinlich zu viele Verantwortlichkeiten und muss aufgeteilt werden | * beim Entwickeln einer Klasse stellt man fest, dass sie am Besten von zwei Basisklassen erben sollte, um ihre Funktionalität zu implementieren -> die Klasse hat wahrscheinlich zu viele Verantwortlichkeiten und muss aufgeteilt werden | ||
* beim Erstellen von Tests für eine Klasse werden dieser Attribute/Methoden hinzugefügt, die nur vom Test benötigt werden und nicht von "normalen" Klassen -> diese Attribute/Methoden sollten eliminiert und die Vorgehensweise der Tests überdacht werden; wahrscheinlich werden Interna getestet, die besser anders geprüft werden sollten | * beim Erstellen von Tests für eine Klasse werden dieser Attribute/Methoden hinzugefügt, die nur vom Test benötigt werden und nicht von "normalen" Klassen -> diese Attribute/Methoden sollten eliminiert und die Vorgehensweise der Tests überdacht werden; wahrscheinlich werden Interna getestet, die besser anders geprüft werden sollten | ||
+ | * Methoden in Interfaces haben unterschiedliche Abstraktionsstufen, z.B. ''LiesCsvDaten()'' (Textverarbeitung) und ''ErzeugePerson()'' (fachliche Logik). |