Programmieraufgabe 92

Aufgabe

Erstelle ein Programm zur Verwaltung von Hausaufgaben. Die Hausaufgabe (Fach, Datum, Priorität, Inhalt,…) wird über eine GUI eingegeben und in einer linearen Liste unter Verwendung des Entwurfsmusters Kompositum verwaltet.

Eine Liste aller zu machenden Hausaufgaben eines Tages soll angezeigt werden.

Alles andere ist im Wesentlichen optional.

Ich weiß, dass eine ArrayList einfacher wäre, aber laut Lehrplan soll das Kompositum-Muster hierfür benutzt werden. Also dann so. Am Ende der elften Klasse kann dann ja auf ArrayLists und / oder Datenbanken gewechselt werden.

Ergänzung: Dieses Aufgabe hatte ich bereits Anfang Dezember geschrieben, aber konnte es wegen der Lösung noch nicht anzeigen. Das ist ja jetzt anders: HA_Verwaltung

Ich muss aber gestehen, dass ich an manchen Stellen getrickst habe – zwar legal, aber ich habe getrickst. So ist der Aufbau des Menüs mit den Daten der Hausaufgaben von der Idee her über eine Liste gelöst, allerdings habe ich keine benutzt. Ich habe stattdessen mit Strings und dem Symbol # gearbeitet, um so schrittweise die Informationen zusammen zu suchen. Am Ende wird dann über die Funktion split der String wieder in ein Array umgewandelt:

//Alle Infos vom Backend (Model) als String holen.
//Die einzelnen HA werden dabei mit # getrennt
//Den String an der Stelle der # aufbrechen und in ein Array umwandeln.
String[] arrayOfAllHA = myHA_list.getAllInfosForGUI().split(“#”);

//Durchsuchen aller HA
String allHAofOneDate = “”;
for (int i = 0; i

//Die Einzelinformation aufsplitten
//Der 1. Wert ist das datum
String curDate = arrayOfAllHA[i].split(“;”)[0];

//Wenn das Datum übereinstimmt, aufnehmen
if (choosedDate.equals(curDate)) {
allHAofOneDate += “#”+arrayOfAllHA[i];
}
}

//Den ersten Hash # entfernen
allHAofOneDate = allHAofOneDate.substring(1, allHAofOneDate.length());

//Den Lösungsstring mit allen Daten wieder splitten und
//die Anzeige aktualisieren
jNumberField1_anzahl.setInt(allHAofOneDate.split(“#”).length);

Selbstverständlich hätte man auch ein Array vom Model zurückgeben lassen können, aber das schrittweise hinzufügen etc. fand ich einfach zu komplex, da schnell bei zweidimensionalen Arrays landet, die ich noch nicht behandelt hatte.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Durch die weitere Nutzung der Seite (Scrollen, Navigieren) stimmen Sie der Verwendung von Cookies zu. Weitere Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden.

Schließen