Zitat von
burn:
Also kann ich mein Design so lassen?
Also ich würde Klassen, die in einem direkten Zusammenhang stehen in einer
Unit speichern.
Beispiel 1:
Es gibt folgende Klassen:
TMorseEncoder - verwandelt Klartext in Morsezeichen ('... --- ...').
TMorseDecoder - parst Morsezeichen und liefert Klartext zurück.
Eine weitere Klasse TMorseSoundGen nimmt die Morsezeichen entgegen und steuert dann die Soundkarte an.
Also ich würde alle drei Klassen in einer
Unit platzieren.
Je eine
Unit pro Klasse würde hier keinen Sinn machen, zumal TMorseEncoder und TMorseDecoder das gleiche Morsealphabet benützen.
Beispiel 2:
Es gibt eine Klasse THashMap - die Klasse hält eine Liste von Wertepaaren (Schlüssel & Inhalt)
Assoziatives Array
Davon abgeleitet gibt es eine weitere Klasse, die für einen bestimmten Zweck erweitert wurde.
In diesem Fall sollten es zwei Units sein, da man die abgeleitete Klasse ja nur für eine bestimmte Anwendung erstellt hat,
während die Basisklasse auch an anderen Stellen verwendet werden kann.
Wenn die Basisklasse also allgemein verwendbar ist, während die abgeleitete Klasse projektspezifisch ist, dann sollte man
in verschiedene Units aufteilen.
Es kommt halt immer auf die Umstände an, wie man die Klassen auf die Units verteilt.
Suchwörter: Modularisierung, Kohäsion, Kopplung