Exkurs - Modellierung
Erweiterung - Speicherformate
Es gibt eine Vielzahl an Möglichkeiten, Datenformate zur Speicherung der Informationen, die die Karteikarten enthalten, zu entwerfen. Wir werden hier das folgende XML-basierte Datenformat benutzen.
<?xml version="1.0" encoding="iso-8859-1"?>
<kartenstapel>
<karte>
<stichwort>
dog
</stichwort>
<erläuterung>
Hund
</erläuterung>
</karte>
<karte>
<stichwort>
cat
</stichwort>
<erläuterung>
Katze
</erläuterung>
</karte>
<karte>
<stichwort>
mouse
</stichwort>
<erläuterung>
Maus
</erläuterung>
</karte>
<karte>
<stichwort>
cow
</stichwort>
<erläuterung>
Kuh
</erläuterung>
</karte>
</kartenstapel>
Erweiterung des Modells
Das bisher entwickelte Modell wird wie folgt um zwei Methoden erweitert.
Dokumentation der Klasse Kartestapel
Die folgenden Methoden werden zur Klasse Kartenstapel
hinzugefügt. Beachte, dass bei der
detaillierten Spezifikation der Datentypen bereits Wissen über die weitere Verarbeitung einfließt.
Methode kartenstapelToString(): string
: Funktion, die aus den Karte
-Objekten
der Liste karten
ein XML-Quelltext erzeugt und zurückliefert
Methode stringToKartenstapel(quelltext: string)
: Prozedur, die aus einem XML-Quelltext die
Karte
-Objekte erzeugt und in die Liste karten
aufnimmt
Erweiterung: Abfragemodus
Die grafische Benutzeroberfläche soll in etwa folgende Gestalt haben:
Wir benutzen die folgende Codierung der Zustände:
- 0: Karten anzeigen
- 1: Karten aufnehmen bzw. löschen
- 2: Stichwort abfragen
- 3: Erläuterung abfragen
Die Zustandstabelle beschreibt das gewünschte Verhalten der grafischen Benutzeroberfläche.
Zustand | Ereignis | Aktionen | Folgezustand |
---|---|---|---|
2,3 | [Karten laden] | öffnet ein Dialogfenster zur Festlegung des Dateinamens und lädt die Karteninhalte | gleicher Zustand |
2,3 | [Karten speichern] | öffnet ein Dialogfenster zur Festlegung des Dateinamens und speichert die Karteninhalte | gleicher Zustand |
2,3 | [Karte aufnehmen],[neue Karte],[Karte entfernen] | keine | gleicher Zustand |
2,3 | [Anfang],[weiter],[zurück],[Ende] | wählt die entsprechende Karte aus und zeigt nur das Stichwort bzw. die Erläuterung an | gleicher Zustand |
2 | [Erläuterung aufdecken] | zeigt auch die Erläuterung an | 2 |
3 | [Stichwort aufdecken] | zeigt auch das Stichwort an | 2 |
2,3 | [umsortieren] | ändert die Reihenfolge der Karten des Kartenstapels und zeigt nur das Stichwort bzw. die Erläuterung der ersten Karte an | gleicher Zustand |
0,1,2,3 | (0) | zeigt den Inhalt der ersten Karte an | 0 |
0,1,2,3 | (1) | zeigt den Inhalt der ersten Karte an | 1 |
0,1,2,3 | (2) | zeigt nur das Stichwort der ersten Karte an | 2 |
0,1,2,3 | (3) | zeigt nur die Erläuterung der ersten Karte an | 3 |