Modellierung eines Klassendiagramms
Vervollständigen des Klassendiagramms
Wir haben im vorherigen Kapitel ein Objektdiagramm erstellt. Objektdiagramme beschreiben die Objekte eines Modells
und deren Beziehungen und zeigen die Objektzustände zu einem bestimmten Zeitpunkt an. Schaue dir bspw. das Objektdiagramm im
vorherigen Kapitel
'Beziehungen zwischen den Akteuren' an.
Als nächstes modellieren wir unser Spiel mit einem Klassendiagramm, welches die Klassen des Modells und deren Beziehungen
beschreibt. Diese sind auf den ersten Blick sehr ähnlich zu Objektdiagrammen. Allerdings beschreiben sie allgemein
Klassen, Schnittstellen sowie deren Beziehungen und nicht - wie beim Objektdiagramm - konkrete Objekte.
Auf dem folgenden Bild sind die bereits modellierten Klassen zu sehen. Was noch fehlt, sind die Beziehungen
zwischen ihnen, die Dateitypen der einzelnen Attribute und Parameter, welche die Methoden benutzen.
Quelle: SD BRI
Aufgabe 1
Stelle zwischen den Klassen sinnvolle Beziehungen her, indem Du die bekannten Assoziationspfeile einzeichnest. Du kannst dazu das Objektdiagramm aus dem vorherigen Kapitel 'Beziehungen zwischen den Akteuren' zu Rate ziehen. Beschrifte die Assoziationspfeile mit 'ruft auf' oder 'besitzt'.
Aufgabe 2
Unsere Attribute in den Klassen brauchen jeweils einen Datentyp. Bspw. ist der Name in der Klasse 'Player' vom Typ
'String' oder die Objekte 'player1' und 'player2' sind von der Klasse 'Player' (s. Bild).
Ergänze nun das Klassendiagramm, indem du jedem Attribut einen Datentyp zuweist.
Quelle: SD BRI
Aufgabe 3
Unsere in 5.2.2 gefunden Methoden brauchen nun Parameter. Bspw. gibt die Methode 'playDraw' (mache einen Zug)
in der Klasse 'Player' eine Spalte zurück, in welcher der Spieler einen seiner Steine werfen möchte.
Da wir die Spalten durchnummeriert haben, ist der Rückgabetyp ein Integer Zahl. Menschliche Spieler müssen eine
Eingabe machen können. Da unsere Ein- und Ausgabe über die GUI läuft,
benötigt die Methode 'playDraw' also als Eingabe- oder Übergabeparameter (gekennzeichnet durch 'eing.')
das Objekt 'gui' (s. Bild).
Versuche nun die restlichen Parameter zu verstehen.
Quelle: SD BRI
Ergänze nun das Klassendiagramm, indem du jeder Methode Eingabe- und Ausgabeparameter zuweist. Hinweis: Was genau die Methoden machen, haben wir im Kapitel 'Die Akteure unserer Miniwelt' festgelegt.