01 | Wiederholung der OOM mit Quarto
„Quarto!“ (im Folgenden: Quarto) ist ein prämiertes Brettspiel. Wir wollen es digital spielbar machen.
🟪 Spielen
👤 Setze dich nacheinander mit zwei Personen zusammen, die du noch nicht gut oder noch gar nicht kennst, und spiele eine Runde Quarto.
🟦 Modellieren
📝 „Ein Computermodell ist die Abbildung eines Teils der Wirklichkeit (ein Modell) in digitaler, von einem Computer verarbeitbarer Form. Das Modell ist regelmäßig in seiner Komplexität gegenüber der Wirklichkeit stark eingeschränkt und bildet daher nur Teilaspekte der Wirklichkeit ab.“ (https://de.wikipedia.org/wiki/Computermodell) Es gibt Strukturmodelle (z. B. Objektdiagramm und die Klassendiagramme Entwurfs- und Implementationsdiagramm), Prozessmodelle (z. B. Sequenzdiagramm) und Algorithmusmodelle (z. B. Struktogramm). Bei der Darstellung dieser Diagramme orientieren wir uns an UML, halten uns aber an die NRW-Abiturvorgaben.
-
👤 Betrachte die zentralen vier Eigenschaften anhand derer sich die Quarto-Figuren voneinander unterscheiden und erstelle mit PlantUML für eine Figur ein Objektdiagramm. Lade das fertige Objektdiagramm im Kollaborationsbereich hoch.
💁 Hilfen: Im Wikipedia-Artikel von Quarto findest du Hilfe.
Vorlage für die Objektdiagramme:
Objektdiagramm in PlantUML @startuml skinparam roundcorner 20 skinparam shadowing true object " <u>objektbezeichner : Objekttyp </u>" { attributsbezeichner1 = attributswert attributsbezeichner2 = attributwert attributsbezeichner3 = attributwert attributsbezeichner4 = attributwert } @enduml -
👤 Ergänze den folgenden Text zu Objekten.
-
👥 Überführe die verschiedenen Objektdiagramme in ein Entwurfsdiagramm. Im Entwurfsdiagramm werden noch keine Get- und Set-Methoden aufgeführt.
Vorlage für die Objektdiagramme:
Objektdiagramm in PlantUML @startuml skinparam dpi 200 skinparam classAttributeIconSize 0 skinparam roundcorner 0 class Klassenbezeichner { attributsbezeichner1: Attributstyp attributsbezeichner2: Attributstyp --- methodenbezeichner1(): Rückgabetyp methodenbezeichner2(): Rückgabetyp } @enduml -
👥 Erstelle nun ein geeignetes Implementationsdiagramm.
🟩 Implementieren
👤 Implementiere die Klasse Spielfigur in Java und instanziiere in der Main-Methode ein Objekt dieser Figur.