Fortgeschrittene objektorientierte Programmierung
LVA 185.211, VU, 3 Ects, 2012 S

3. Übungsaufgabe

Lernen Sie Eiffel und entwickeln Sie ein Programm in Eiffel (siehe unten). Ziel der Aufgabe ist das Sammeln von Erfahrungen zu Zur Lösung der Übungsaufgabe verwenden Sie am besten ISE-Eiffel. Das als GNU-Projekt in Konkurrenz dazu entwickelte SmartEiffel ist weder mit dem Eiffel-Standard noch mit ISE-Eiffel kompatibel und scheint seit einiger Zeit nicht mehr weiterentwickelt zu werden.

ISE-Eiffel:

Die Firma ISE wurde von Bertrand Meyer, dem Entwickler von Eiffel, gegründet und vertreibt vor allem Eiffel-Produkte und Support. Die Eiffel-Entwicklungsumgebung von ISE, EiffelStudio, basiert auf VisualStudio und ist für die Entwicklung von Open-Source-Software auf vielen Plattformen frei verfügbar. Die kommerzielle Version unterscheidet sich davon nur in den Lizenzvereinbarungen und im Support. Sowohl zu EiffelStudio als auch zu Eiffel selbst finden Sie umfangreiche online Dokumentation.

Fragen:

Beantworten Sie anhand einer Beispielaufgabe (siehe unten) folgende Fragen:

Aufgabe:

Folgende Aufgabenstellung soll als Anregung dienen. Sie können auch jede beliebige andere Aufgabe vergleichbaren Umfangs in Eiffel lösen.

Schreiben Sie ein Programm zur Verwaltung von Bankkonten. Jedes Konto verfügt über Angaben zu den Zeichnungsberechtigten, einen Kreditrahmen (bei dessen Überschreitung die Bank in der Regel keine weitere Überziehung zulässt), je einen Prozentsatz für die Sollverzinsung (Zinsen für den Betrag, um den das Konto überzogen ist) und Habenverzinsung (Zinsen für das Guthaben am Konto) und den aktuellen Betrag am Konto. Es sollen Operationen für Bareinzahlungen, Barauszahlungen, Überweisungen zwischen Konten sowie Abfragen und Änderungen der zu den Konten gespeicherten Daten (ausgenommen Änderungen des Guthabens) unterstützt werden.

Auf Konten sollen zumindest folgende Zusicherungen gelten: Die Verzinsung und der Kreditrahmen sollen stets innerhalb der vom Kreditinstitut vorgegebenen Grenzen bleiben. Es gibt einen Mindestbetrag von 2 Euro für jede Einzahlung, Auszahlung und Überweisung.

Entwickeln Sie zwei Untertypen des Kontos: Ein Studentenkonto und ein Pensionskonto. Diese Konten sollen jeweils nur einen Zeichnungsberechtigten haben, der Student bzw. Pensionist ist. Überprüfen Sie, ob die Zeichnungsberechtigten tatsächlich die richtigen Typen haben, wobei Student und Pensionist Untertypen von Person sind. Studenten- und Pensionskonten sollen folgende Unterschiede zu normalen Konten aufweisen: Für Verzinsungen und Kreditrahmen gelten engere Grenzen als bei normalen Konten, dafür gelten niedrigere Mindestbeträge für Einzahlungen, Auszahlungen und Überweisungen (1 Euro). Überlegen Sie sich weitere Zusicherungen, die die Möglichkeiten und vor allem Grenzen von Zusicherungen demonstrieren.

Schreiben Sie ein einfaches Programm zum Testen der Konten. Achten Sie generell auf ein sinnvolles Sichtbarmachen von features in anderen Programmteilen.

Complang
Puntigam
   Kontakt
   Research
   Lehre
      OOP
      Typsysteme
      EP2
      FOOP
      Prog.spr.
      frühere Lehre
         LVAs 2017 W
         LVAs 2017 S
         LVAs 2016 W
         LVAs 2016 S
         LVAs 2015 W
         LVAs 2015 S
         LVAs 2014 W
         LVAs 2014 S
         LVAs 2013 W
         LVAs 2013 S
         LVAs 2012 W
         LVAs 2012 S
            PK
            FOOP
               1. Aufgabe
               2. Aufgabe
               3. Aufgabe
            Prog.spr.
         LVAs 2011 W
         LVAs 2011 S
         LVAs 2010 W
         LVAs 2010 S
         LVAs 2009 W
         LVAs 2009 S
         LVAs 2008 W
         LVAs 2008 S
         LVAs 2007 W
         LVAs 2007 S
         LVAs 2006 W
         LVAs 2006 S
         LVAs 2005 W
         LVAs 2005 S
         LVAs 2004 W
         LVAs 2004 S
         LVAs 2003 W
   Links
Sitemap
Kontakt
Schnellzugriff:
vorige Aufgabe
Links:
ISE-Eiffel
Eiffel-Doku
Fakultät für Informatik
Technische Universität Wien
Anfang | HTML 4.01 | Datenschutzerklärung | letzte Änderung: 2012-04-18 (Puntigam)