1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile...

13

Transcript of 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile...

Page 1: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.
Page 2: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

1. Was ist Objektorientierung?2. Objektorientierte Sprachen3. Was ist Datenkapselung?4. Vorteile der Datenkapselung5. Nachteile der Datenkapselung6. Grundlegende Begriffe7. Was ist Vererbung?8. Was ist Polymorphie?

Page 3: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

Simula-67: erste objektorientierte Programmiersprache Art Programmierung, um praktischen Erfordernissen besser

gerecht zu werden Keine Trennung von Datenstrukturen und aktiven

Funktionen. Grundelemente: Datenkapselung, Polymorphie Vererbung.

Page 4: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

Smalltalk C# C++ Simula-67 Eiffel Ruby Java Python Pascal Fortran

Page 5: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.
Page 6: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

Schutz von Klassen und Attributen vor unerwünschten Zugriffen

Kapsel versteckt Teile des Objekts Durchlässige Stellen der Kapsel nennt man Schnittstellen.

Page 7: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

Änderung der Implementierung möglich, ohne die Zusammenarbeit mit anderen Klassen zu beeinträchtigen

Erhöhte Übersichtlichkeit Einzelne innere Zusammenhänge veränderbar, ohne es in

anderen Programmteilen zu ändern Verbesserte Testbarkeit, Stabilität und Änderbarkeit der

Software bzw. deren Teile (Module) Bei Zugriff über eine Zugriffsfunktion spielt es von außen

keine Rolle, ob diese Funktion im inneren der Klasse existiert.

Page 8: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

In Abhängigkeit vom Anwendungsfall Geschwindigkeitseinbußen durch den Aufruf der Methode.

Zusätzlicher Programmieraufwand für die Erstellung der Zugriffsmethoden.

Page 9: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

Klassen: Vorlagen, aus denen Instanzen genannte Objekte zur

Laufzeit erzeugt werden. Abstraktion: Als Abstraktion bezeichnet man jedes Objekt im System,

dass als abstraktes Modell eines Akteurs betrachtet werden kann. Feedback: Verschiedene Objekte kommunizieren über einen

Nachricht-Antwort-Mechanismus. Attribute: Objekte (Hosen, Jacken, Pullover, ...) besitzen verschiedene

Eigenschaften (Farbe, Größe, Material,...). Diese Eigenschaften eines Objekts heißen Attribute

Page 10: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.
Page 11: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

Schritt zur neuen Konstrukte (Klasse) Zwei verschiedene Arten von Vererbung

SchnittstellenvererbungSchnittstellenvererbung „erbt“ eine abgeleitete Klasse

den code von der MethodenImplementationsvererbung

abgeleitete Klasse erbt auch die Implementierung von einer oder mehreren "Anfangsklassen"

Klasse übernimmt Merkmale einer alten Klasse

Page 12: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

„Verebende“ Klasse = „Basisklasse“ oder „Superklasse“ „Erbende“ Klasse = „abgeleitete Klasse“ oder „Subklasse“ Mehrfachvererbung: eine Klasse erbt mehrere Merkmale

einer anderen Klasse

Page 13: 1. Was ist Objektorientierung? 2. Objektorientierte Sprachen 3. Was ist Datenkapselung? 4. Vorteile der Datenkapselung 5. Nachteile der Datenkapselung.

ENDE