Home

Abstraktionsschichten

Abstraktionsschichten bezeichnet in der Informatik die systematische Gliederung eines Systems in mehrere Ebenen, wobei jede Ebene eine abgekoppelte, vereinfachte Repräsentation der darunterliegenden Schicht bildet. Dadurch werden Komplexität reduziert, Verständnis erleichtert und die Wiederverwendbarkeit von Bausteinen erhöht.

In der Praxis finden sich Abstraktionsschichten in vielen Bereichen der Informatik. Ein klassisches Beispiel ist das

Vorteile der Abstraktionsschichten sind reduzierte Komplexität, erhöhte Portabilität und Austauschbarkeit, leichtere Wartung, bessere Testbarkeit und die

Nachteile sind potenzieller Performance-Overhead, Schichtenstau und das Risiko, zu starke Abstraktionen zu entwickeln, die fehlende Transparenz

In der Softwarearchitektur finden sich Abstraktionsschichten in Muster wie der Schichtenarchitektur und Model-View-Controller, sowie in der

OSI-Modell
mit
sieben
Schichten;
in
der
Praxis
wird
oft
der
TCP/IP-Stapel
verwendet,
der
Netzwerkschicht
bis
Anwendungsschicht
abstrahiert.
Weitere
Beispiele
sind
Hardwareabstraktion
in
Betriebssystemen,
Treiber,
Kernel-
und
Benutzerschnittstellen
sowie
Datenzugriffs-
und
Dateisystemschichten.
Förderung
von
Wiederverwendung.
Durch
klare
Schnittstellen
bleiben
Implementierungen
hinter
den
Schichten
austauschbar,
ohne
das
Gesamtsystem
zu
beeinträchtigen.
oder
Fehlkommunikation
zwischen
Ebenen
verursachen.
Ungenaue
oder
zu
hohe
Abstraktion
kann
Wartungsaufwand
statt
Vereinfachung
erhöhen.
Programmierung
durch
abstrakte
Klassen
und
Schnittstellen.
Auf
Systemebene
dienen
Hardware-Abstraktionslayer,
Virtualisierung
und
Containerisierung
dazu,
Hardware-
oder
Umgebungsdetails
von
Anwendungen
zu
isolieren.