Kritiken, die sich auf die Attribute von Klassen beziehen.
Die aktuelle Version von ArgoUML hat in dieser Kategorie die folgenden Kritiken.
Diese Kritik wurde in einer früheren Designmangel-Kategorie diskutiert (siehe Abschnitt 15.4.2, „ Überarbeite die Attributnamen, um einen Konflikt zu vermeiden “).
Hinweis, dass für die angegebene Klasse keine Instanzvariable
spezifiziert wurde. Solche Klassen können erzeugt werden, um
statische Attribute und Methoden zu spezifizieren, aber sie sollten
per Konvention das Stereotyp «utility»
erhalten.
Sie haben bis jetzt keinen Konstruktor für die Klasse Klasse definiert. Konstruktoren initialisieren neue Instanzen, sodaß deren Attribute gültige Werte aufweisen. Diese Klasse benötigt wahrscheinlich einen Konstruktor, weil nicht alle seiner Attribute initiale Werte aufweisen.
Das Definieren guter Konstruktoren ist der Schlüssel für das Einrichten unveränderlicher Klassen und unveränderliche Klassen sind eine leistungsfähige Hilfe beim Schreiben soliden Codes.
Um dies zu beheben, fügen Sie manuell einen Konstruktor hinzu, indem
Sie im Explorer auf die Klasse klicken und eine
Operation mit Hilfe des kontextsensitiven Popup-Menüs des
Eigenschaftsregisters hinzufügen, oder die Klasse
im Diagramm markieren und das Werkzeug
Operation hinzufügen
verwenden.
Im UML 1.4 Standard ist ein Konstruktor eine Operation mit dem Stereotypen «create». Obwohl kein strikter Standard, wird ArgoUML auch «Create» als Stereotyp für Konstruktoren akzeptieren.
Gemäß Java und C++-Konvention hat ein Konstruktor den gleichen Namen wie die Klasse, ist nicht statisch und gibt keinen Wert zurück. ArgoUML wird auch jede Operation akzeptieren, die diesen Konventionen eines Konstruktors folgt, auch wenn sie nicht den Stereotypen «create» aufweist.
![]() | Achtung |
---|---|
Operatoren werden in ArgoUML mit einem Standard-Rückgabeparameter
( |
Hinweis, dass die Klasse für ein gutes Design zu viele Attribute aufweist und das Risiko eines Designengpaß in sich birgt.
Der Assistent dieser Kritik erlaubt das Einstellen eines Schwellwertes, z.B. die maximal erlaubte Anzahl von Attributen bevor diese Kritik ausgelöst wird.
![]() | Achtung |
---|---|
Diese Anzahl wird nicht dauerhaft gespeichert und es gibt keinen Weg, diese zu reduzieren, nachdem sie hochgesetzt wurde. Es sei denn, man erzeugt mehr Attribute, bis die Kritik erneut ausgelöst wird. Der Neustart von ArgoUML setzt dieses Anzahl wieder auf seinen Standardwert: 7. |