Objektorientierte Programmierung 5. Vorlesung
Prof. Dr. Peter Knauber
FACHHOCHSCHULE MANNHEIM Hochschule für Technik und Gestaltung
Übersicht
Übersicht Fragen OOD nach Booch
• Fragen
Beispiel Aufgabe
• Objektorientierter Entwurf nach Booch
Überblick
• Beispiel
Vorlesung OOP, Mannheim, 21.03.2002
Folie 1
© Prof. Dr. Peter Knauber FH Mannheim
Übersicht Fragen OOD nach Booch Beispiel Aufgabe Überblick
Folie 2
Vorlesung OOP, Mannheim, 21.03.2002
© Prof. Dr. Peter Knauber FH Mannheim
Objektorientierter Entwurf nach Booch
Übersicht Fragen OOD nach Booch
•
Jedes Objekt (jede Klasse von Objekten) in der Realität wird durch ein Objekt (eine Klasse von Objekten) im Modell repräsentiert.
•
Heuristik:
Beispiel Aufgabe Überblick
1. Identifiziere Klassen und Attribute 2. Identifiziere Operationen (auf den Klassen/Attributen) 3. Definiere die Sichtbarkeit bezüglich anderer Objekte 4. Definiere die Schnittstelle der Klassen (Interface) 5. Implementiere die Klassen und Operationen
Vorlesung OOP, Mannheim, 21.03.2002
Folie 3
© Prof. Dr. Peter Knauber FH Mannheim
Erklärung zum objektorientierten Entwurf
Übersicht Fragen OOD nach Booch Beispiel Aufgabe Überblick
• Identifiziere Klassen und Attribute anhand der Substantive aus der Problembeschreibung. • Identifiziere Operationen (auf den Klassen/Attributen) anhand der Verben aus der Problembeschreibung. →Das ist eine grobe Vereinfachung!! • Definiere die Sichtbarkeit bezüglich anderer Objekte: Topologie des Systems, Beziehungen zwischen Klassen • Definiere die Schnittstelle der Klassen (Interface): Festlegen der statischen Semantik • Implementiere die Klassen und Operationen: Wahl einer geeigneten Repräsentation
Folie 4
Vorlesung OOP, Mannheim, 21.03.2002
© Prof. Dr. Peter Knauber FH Mannheim
Beispiel aus der letzten Vorlesung
Fragen
• Ein Konto hat einen Inhaber und eine Kontonummer. Man kann darauf einzahlen und es kündigen.
OOD nach Booch
• Jeder Kontoinhaber hat einen Namen und eine Adresse.
Übersicht
Beispiel Aufgabe Überblick
• Ein Sparbuch ist ein Konto, für das gesetzliche Kündigungsfrist gilt. • Ein Girokonto ist ein Konto, für das Schecks eingereicht werden können. Klasse Vererbungsbeziehung Attribut Andere Beziehung Operation
Vorlesung OOP, Mannheim, 21.03.2002
Folie 5
© Prof. Dr. Peter Knauber FH Mannheim
Ergebnis inhaber
Konto
Übersicht Fragen
1
ktoNummer : Integer
OOD nach Booch
Person
Adresse
Name : String
zahleEin () kündige ()
Beispiel Aufgabe Überblick
Sparbuch kündigungsfrist : Dauer
Vorlesung OOP, Mannheim, 21.03.2002
Girokonto
Scheck
reicheScheckEin ()
Folie 6
© Prof. Dr. Peter Knauber FH Mannheim
Folie 7
© Prof. Dr. Peter Knauber FH Mannheim
Übersicht Fragen OOD nach Booch Beispiel Aufgabe Überblick
Vorlesung OOP, Mannheim, 21.03.2002
Aufgabe: Modellieren Sie: Simple International Bank (SIB) Übersicht Fragen OOD nach Booch Beispiel Aufgabe Überblick
• Modelliert wird ein internationales, also ein mehrwährungsfähiges Bankkonto. • Ein Kunde geht zur Bank und weist sich mit seinem Namen aus, um ein Konto zu eröffnen. Er bekommt dann eine (neue) Kontonummer zugewiesen. Für die Kontoeröffnung ist eine Mindesteinzahlung von € 50 verpflichtend. • Mit der Kontonummer kann ein Kunde auf sein Konto zugreifen: Er kann Beträge in verschiedenen Währungen einzahlen und abheben und er kann in verschiedenen Währungen den Kontostand abfragen. Er kann auch sein Konto wieder auflösen. • Die Bank verwaltet (unter Zuhilfenahme der Kontonummer) Konten, die jeweils den Namen des Besitzers und den aktuell verfügbaren Betrag in Euro speichern. • Es gibt unabhängig von einem bestimmten Konto, also für die gesamte Bank, die Möglichkeit, Umrechnungsfaktoren von und nach Euro anzugeben sowie Beträge von und nach Euro zu konvertieren. Folie 8
Vorlesung OOP, Mannheim, 21.03.2002
© Prof. Dr. Peter Knauber FH Mannheim
Begriffe der Objektorientierung
Übersicht Fragen OOD nach Booch Beispiel Aufgabe Überblick
Objekte
• Sichtbarkeit
Klassen
• Kapselung
Instanziierung
Identität von Objekten
Vererbung / Inheritance
Struktur und Verhalten () Delegation
Attribute
() Objektorientierte Analyse (OOA)
Polymorphismus • Dynamische Bindung • Initialisierung
() Objektorientiertes Design (OOD)
Methoden
• Objektorientierte Programmierung (OOP)
Operationen
• Objektorientiertes Testen
Mitteilungen / Messages
• Objektorientierte Wartung
Vorlesung OOP, Mannheim, 21.03.2002
Folie 9
© Prof. Dr. Peter Knauber FH Mannheim
Ausblick
Übersicht Fragen OOD nach Booch Beispiel
• Modellierungsergebnisse • Fragen, die offen geblieben sind
Aufgabe Überblick
• Objektorientierte Entwicklungsmethoden • Der KobrA-Ansatz • Diagramme • Beispiele
Vorlesung OOP, Mannheim, 21.03.2002
Folie 10
© Prof. Dr. Peter Knauber FH Mannheim