![]() |
Re: [UML] Mastermind
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo holle,
ja, das kannst du. Der Aufrufer dieser Methode muss aber in OOP ein Objekt sein. Ich habe einmal ein Beispiel für ein Klassendiagramm und ein dazugehöriges Sequenzdiagramm angehängt. Das Sequenzdiagramm zeigt, dass der Spieler zunächst einmal ein neues Spiel beginnt und dazu einen neuen SecretCode vom Spielbrett erzeugen lässt. Dann erzeugt der Spieler einen VersuchsCode und schickt ihn an Spielbrett, welchen diesen auswertet. |
Re: [UML] Mastermind
@MrSpock
DANKE für die Diagramme. Noch ein zwei Fragen dazu: Was bedeutet "void"? In der Wiki habe ich folgendes gefunden Zitat:
Wie kann der Spieler das Spielbrett dazu veranlassen einen SecretCode zu erzeugen? Ich verstehe das irgendwie nicht. Ich würde es ja mit Spielbrett.ErzeugeCode(); machen. Geht aber nicht da ja der Spieler die Methode auslösen muss und ErzeugeCode(); eine Funktion ist. Ich glaub mir fehlt da noch was an Wissen. Kann man das irgenwo nachlesen? - Marcel - |
Re: [UML] Mastermind
Hallo holle,
ja, void heißt, dass kein Wert zurückgegeben wird. Wird von dem Tool, das ich benutzt habe so erzeugt, weil es ein Java Tool ist. Ein gutes Buch zum Thema Objectorientierte Analyse und Design mit UML ist sicher eine gute Investition. Du könntest im Hauptprogramm z.B. die beiden Objekte Spieler und Spielbrett erzeugen. Ich würde das so realisieren, wenn im Hauptmenue der Punkt Datei | Neu ausgewählt wird, erstellt du die beiden Objekte Spieler und Spielbrett:
Delphi-Quellcode:
Der Spieler führt jetzt das aus, was in dem Sequenzdiagramm dargestellt ist:
Spieler := TSpieler.Create;
Spielbrett := TSpielbrett.Create; { Dann schickst du dem Spieler die Nachricht, dass ein neues Spiel beginnt. } Spieler.NeuesSpiel;
Delphi-Quellcode:
Ich hab das jetzt nur mal so hingepfuscht, ohne mir da weitere Gedanken zu machen.
{ Code in der Methode TSpieler.NeuesSpiel }
Spielbrett.ErzeugeCode; { Jetzt wird die Methode GeneriereCode aufgerufen, die eine Oeration von TSpieler ist } { Generiere Code ermöglicht jetzt dem Benutzer einen Code einzugeben. Es wird ein Objekt der Klasse TCode generiert, in dem der Code gespeichert wird. Wahrscheinlich werden die Objekte in einer Collection gespeichert. } NextCode := GeneriereCode; { und jetzt schickt der Spieler die Nachricht an das Spielbrett } Ergebnis := Spielbrett.TesteCode(NextCode); [Nachtrag] Wenn du den Aufruf direkt machst, dann wir letztlich dein Formular zum Objekt Spieler. [/Nachtrag] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz