Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

2 Datenabstraktion Geheimnisprinzip:

Ähnliche Präsentationen


Präsentation zum Thema: "2 Datenabstraktion Geheimnisprinzip:"—  Präsentation transkript:

1 2 Datenabstraktion Geheimnisprinzip:
(information hiding principle, Parnas 1972) Zugriffe auf Teile einer Programmeinheit, die für die „reguläre Benutzung“ nicht erforderlich sind, sollten verboten sein. Besser noch: die nicht benötigten Teile sollten unsichtbar sein.

2 Datenabstraktion: (data abstraction)
Anwendung des Geheimnisprinzips auf die Darstellung von (einfachen und komplexen) Daten im Rechner: die Daten sind nicht durch Zugriff auf ihre Bestandteile, sondern ausschließlich über zugehörige Operationen manipulierbar. [ Auch „Datenkapselung“ (data encapsulation) ]

3 2.1 Datenabstraktion bei Java-Klassen
class Queue { private int head, length; void append(Entry item)throws QueueOverflow { } . } Queue ist abstrakter Datentyp (abstract data type, ADT) q: Queue verweist auf abstraktes Datenobjekt (ADO)

4 Vorteile der Datenabstraktion:
1 Sicherheit: Objekt kann nicht in ungültige Zustände gebracht werden. 2 Komfort: Benutzer kann von Repräsentation abstrahieren; Objekt wird ausschließlich über Operationen benutzt. 3 Flexibilität: Code der Klasse kann unabhängig vom benutzenden Code entwickelt werden - und ohne Auswirkungen auf den benutzenden Code geändert werden.

5 2.2 Explizite Schnittstellenbeschreibung
interface Name { . // Prozedurköpfe und Konstanten }

6 ? Funktion als Parameter ?
float nullstelle(Funktion f, float a, float b) { // Regula Falsi float x, fx; float fa = f.von(a); float fb = f.von(b); do { x = (a*fb - b*fa)/(fb - fa); fx = f.von(x); if(fx*fa > 0) {a=x; fa=fx;} else {b=x; fb=fx;} } while (Math.abs(fx) > eps); return x; }


Herunterladen ppt "2 Datenabstraktion Geheimnisprinzip:"

Ähnliche Präsentationen


Google-Anzeigen