Kurs 20022 objektorientiertes
Programmieren
Einsendeaufgaben
zu Lerneinheit 1
Anwendungsfallbeschreibung:
Erstellen Sie eine
Anwendungsfallbeschreibung eines Bankautomaten. Damit sollen die Funktionen,
die es ermöglichen, mit der EC-Karte Bargeld abzuheben und den Kontostand
abzufragen, dargestellt werden. Stellen Sie bitte die Anwendungsfälle
und Akteure in grafischer (3 Punkte) und zwei Anwendungsfallbeschreibungen
in tabellarischer Form (5 Punkte) dar!
Folgen Sie dazu dem
Muster
im Kurs!
Für die Grafik
können Sie eines der Werkzeuge
benutzen, auf die auf der Startseite hingewiesen wird.
Klassendiagramm:
(5 Punkte)
Entwickeln Sie zu
den oben genannten Anwendungsfallbeschreibungen ein Klassendiagramm!
Einführung in
BlueJ: (4 Punkte)
Bei dieser Aufgabe
soll mit Hilfe des BlueJ-Werkzeugs ein Auto aus geometrischen Figuren
zusammengebaut werden. Dabei gehen Sie wie folgt vor:
Erzeugen
Sie mit Hilfe der 3 im Projekt "Golf" definierten Klassen Kreis,
Rechteck und Dreieck einen Wagen vom Typ "Golf I" durch Verschieben,
Vergrössern und Veränderung der Farbe der Objekte.
Hierzu benötigen
Sie:
- 2 schwarze Kreise
für die Räder
- 3 Dreiecke für
Front, Frontscheibe und Heckscheibe
- 3 gleichfarbige
Rechtecke für Chassis, Mittelbau und Fahrgastzelle.
Die Farbgebung bleibt
Ihnen (im Rahmen der möglichen Farben) überlassen.
Hierzu müssen
Sie die Projektdatei "golf" mit BlueJ
öffnen, alle Klasse übersetzen (compile) und durch Erzeugung
von Exemplaren der Klassen "Rechteck", "Kreis" und
"Dreieck" und Änderungen der Attribute dieser Exemplare
das Auto zusammensetzen. Senden Sie uns ein Abzug (Screenshot) ihres Bildschirms,
worauf "Ihr" Wagen und das BlueJ-Arbeitsfenster zu sehen sind,
an den Kursbetreuer.
Sortieren von Begriffen: (5 Punkte)
Suchen Sie in der
folgenden Projekt die Begriffe heraus, von denen Sie meinen, dass sie
in eine der folgenden Kategorien passen. Sortieren Sie sie in die richtige
Kategorie ein (4 Begriffe pro Kategorie):
Es gibt folgende Kategorien:
- Klasse,
- Objekt,
- Attribut und
- Methode.
Projektbeschreibung
Es ist eine Vereinsverwaltung
zu realisieren, bei der zunächst einmal die Mitglieder administriert
werden sollen. Jedes Mitglied hat eine Adresse, eine Mitgliedsnummer und
eine oder mehrere Funktionen und muss genau eine Betragart zahlen.
Es gibt in dem Verein
eine unbestimmte Anzahl von Rollen, z. B. Mitglied des Vorstand, Abteilungsleitung,
Arbeitsgruppenmitglied usw. Die Verwaltung soll es ermöglichen, dass
neue Funktionen eingegeben, verändert oder auch gelöscht werden
können.
Weiterhin gibt es
in dem Verein verschiedene Beitragssätze, die nicht direkt den Funktionen
zugeordnet werden können. Jedes Mitglied zahlt nur eine Art von Betrag.
Da es dem Vorstand und dem Mitgliederversammlung möglich sein soll,
nachträglich neue Beitragssatzarten zu schaffen oder vorhandene zu
ändern oder abzuschaffen, müssen die Beitragssatzarten entsprechend
bearbeitbar sein. Es soll auf jeden Fall die Beitragsarten Beitrag für
aktive Mitglieder" und "Beitrag für Fördermitglieder"
geben.
Zur Klärung späterer
Unstimmigkeiten und zur Vermeidung von unnötiger Papierflut sollen
die Rechnungen im System gespeichert werden. Eine Rechnung enthält
unter anderem eine eindeutige Rechnungsnummer, die Mitgliedsnummer des
Adressaten, den Rechnungsbetrag und die Betragsart.
Es soll möglich
sein, eine alphabetisch sortierte Liste aller Mitglieder auszugeben und
alle Jahresbetragsrechnungen zu drucken. Weiterhin muss es aber auch möglich
sein, die Rechnung mit der Nummer 2521 für das Mitglied Meier zu
drucken.
Die verschiedenen
Vorstandspositionen sollen als Funktionen realisiert werden, so ist z.
B. das Mitglied Müller der Vorstandsvorsitzende, d. h. "Vorstandsvorsitzende/r"
ist eine Funktion.
Sind folgende Aussagen
richtig oder falsch? (3 Punkte)
- In dem Augenblick,
in dem eine Klasse mit individuellen Eigenschaften versehen wird, wird
sie zu einem Objekt.
- Das Verhalten eines
Objekts wird nur durch seine Methoden bestimmt.
- Der Zustand eines
Objekts wird durch die Werte seiner Attribute eindeutig bestimmt.
|