AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[UML] Mastermind

Ein Thema von holle · begonnen am 10. Nov 2006 · letzter Beitrag vom 10. Nov 2006
Antwort Antwort
Seite 1 von 2  1 2      
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#1

[UML] Mastermind

  Alt 10. Nov 2006, 12:09
Hallo, ich wollte für Informatik ein kleines Spiel schreiben: Mastermind
Ich habe jetzt angefangen ein UML Diagramm zu entwerfen, bin aber nicht so recht damit zufrieden. Als Objekte habe ich jetzt das Spielbrett, dass sich aus 12 Reihen und 12 Hilfen zusammensetzt. Was haltet ihr davon? Würdet ihr andere Objekte nehmen? Und die Methoden, seit ihr damit einverstanden?

- Marcel -
Miniaturansicht angehängter Grafiken
uml_611.jpg  
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#2

Re: [UML] Mastermind

  Alt 10. Nov 2006, 12:12
Hallo holle,

was ist die Verantwortung der Klasse THilfe und warum brauchst du für jede Reihe eine eigene Instanz?
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: [UML] Mastermind

  Alt 10. Nov 2006, 12:15
Das Spielfeld gliedert sich ja in 12 Reihen. Jede Reihe hat vier Felder für die Eingabe (TReihe) und vier Felder, wo der Gegner angiebt, ob ein Stein sich an der Richtigen Position befindet (THilfe). Das mit den drei Instanzen war mein Vorschlag, geht es besser?

- Marcel -
Marcel
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: [UML] Mastermind

  Alt 10. Nov 2006, 16:19
Also bilde ich dann eine Instanz für das EingabeSpielbrett und eine für das ScoreSpielbrett. Und wie dann weiter?

- Marcel -
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#5

Re: [UML] Mastermind

  Alt 10. Nov 2006, 16:23
Hallo hallo,

soll das Spiel zwei Spieler zulassen oder zunächst nur einen Spieler gegen den Computer?

Du benötigst dann eine Methode innerhalb der "Spielerklasse", die eine Kombination (einen Code) erzeugt, der erraten werden muss.

Wie hast du dir die Eingabe und Ausgabe vorgestellt?
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: [UML] Mastermind

  Alt 10. Nov 2006, 16:41
Ein- und Ausgabe habe ich mir wie HIER bei dieser Onlineversion vorgestellt. Mein Problem ist, dass ich nicht genau weiß, welche Klassen ich benötige. (Wir lernen gerade OOP in der Schule).

Ich hatte mir überlegt evtl. eine Klasse für das Spielbrett zu nehmen. Beim erzeugen des Spielbrettes wird auch der "Code" erzeugt. Gespielt wird gegen den Computer => der Mensch versucht den Code zu knacken.

- Marcel -
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#7

Re: [UML] Mastermind

  Alt 10. Nov 2006, 17:04
Hallo holle,

in einem ersten Schritt bei OOA/OOP machst du dir Gedanken über die Funktionen die du benötigst und erstellst dazu Use Cases.

Wenn ich mir überlege welche Objekte du benötigst, so würde ich auf jeden Fall einmal eine "SpielerKlasse" vorsehen. Der Spieler kann einen Zug durchführen, in dem er einen Code festlegt und dann eine Nachricht "evaluate" an das Spielbrett schickt. Diese ermittelt das Ergebnis und stellt es grafisch dar. Wenn es noch nicht gelöst ist, könnte das Spielbrett eine Nachricht "nextTry" an das Spielerobjekt schicken, um einen neuen Code anzufordern.

Du solltest also ein Sequenzdiagramm anfertigen, dass den Nachrichtenfluss zwischen den Objekten zeigt.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: [UML] Mastermind

  Alt 10. Nov 2006, 17:23
Wir haben das leider im Unterricht anders gelernt. Wir erstellen als erstes immer gleich ein UML Diagramm.

Als ersten Schritt dafür muss ich die Objekte analysieren und daraus die Klassen ableiten.
Spielbrett => TSpielbrett

Dann muss ich ja die benötigten Attribute und Methoden ergänzen.

##TSpielbrett
#
##Attribute
#aktuelleReihe
#geheimCode
#code[1..12]
#
##Methoden
#erzeugen
#tippSetzen(Farbe1, Frabe2, Farbe3, Farbe4)
#anzeigen
#löschen

Da verstehe ich jetzt nicht, was der Spieler da noch machen soll?

- marcel -
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#9

Re: [UML] Mastermind

  Alt 10. Nov 2006, 17:32
Hallo holle,

UML ist eine "Sprache", die verschieden Diagramme zur Verfügung stellt. Du hast ein Klassendiagramm erstellt. Ein Use Case Diagramm ist ein anderer Diagrammtyp. Das Sequenzdiagramm ist ein weiteres Diagramm. Alle diese Diagramme haben verschiedene Aufgaben.

In deinem Klassendiagramm versucht du Objekte zu finden und diesen Verantwortungen zuzuweisen. Welches Objekt hat bei dir die Verantwortung einen Spielzug durchzuführen? Objekte senden Nachrichten. Das ist die einzige Art zu kommunizieren.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: [UML] Mastermind

  Alt 10. Nov 2006, 17:54
na mit "spielbrett.tippsetzen(schwarz, rot, grün blau)" kann ich doch einen spielzug durchführen, oder nicht?

- marcel -
Marcel
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz