Projekt - Implementierung

Erweiterung - Speicherformate

Wir gehen von folgendem objektorientierten Datenmodell aus:

Klassendiagramm zur Lernkartei

Dabei soll folgendes Datenformat zur externen Speicherung von Daten benutzt werden:

<?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>
</kartenstapel>

Aufgabe 1: Implementierung der Methoden

Implementiere die Methode kartenstapelToString.

Aufgabe 2: Implementierung der Methoden

Analysiere die folgende Implementierung der Methode stringToKartenstapel.

    def stringToKartenstapel(self, quelltext):
        stringliste = quelltext.splitlines()
        self.karten = []
        i = 2
        while stringliste[i] == '':
            stichwort = stringliste[i+2]
            erlaeuterung = stringliste[i+5]
            self.karten = self.karten + [Karte(stichwort, erlaeuterung)]
            i = i + 8

Informiere dich, was die Operation splitlines bewirkt. Erkläre anhand des oben gezeigten Beispiels die Arbeitsweise der Methode.

Zusatzaufgabe: Gibt es Fälle, in denen die Methode stringToKartenstapel nach der gezeigten Implementierung nicht korrekt arbeitet?

Erweiterung - Abfragemodus

Die grafische Benutzeroberfläche soll das im letzten Abschnitt beschriebene Verhalten haben.

Aufgabe 3: Implementierung der grafischen Benutzeroberfläche

Erweitere die Implementierung der Klasse GUILernkartei in der gewünschten Weise.

X

Fehler melden

X

Suche