Ein recht gutes Beispiel für diese Technik geben die Dateibearbeitungsbefehle in ANSI-C ab. Du kannst auf die Daten in einer Datei nur über den "Umweg" der Funktionen, die Dein Compiler dafür zur Verfügung stellt, zugreifen. Du hast keinen direkten Zugriff auf die eigentlichen Daten, weil es Dir unmöglich wäre, diese zu adressieren. Daher sind diese Daten private Daten, und die Funktionen sind den Methoden von C++ sehr ähnlich.
Zwei Aspekte dieser Technologie sind in der Softwareentwicklung besonders wichtig. Erstens bekommst Du alle Daten, die sie brauchen, vom System, da die Schnittstelle komplett ist und alles abdeckt, zweitens aber bekommst Du keine Daten, die Du nicht brauchst. Du wirst davor abgehalten (oder bewahrt), in das Dateimanagement einzugreifen und möglicherweise Unfug anzustellen und dabei Daten zu verlieren. Du kannst auch nicht die falschen Daten verwenden, da die Funktionen einen seriellen Zugriff auf diese verlangen. Daß es sich bei diesem Beispiel aber um ein relativ schwaches handelt, sieht man daran, daß es für eine versierte C Programmiererin ein Leichtes ist, den Zugriffsschutz zu umgehen.
Ein weiteres Beispiel für einen schwachen Zugriffsschutz sind die Bildschirm- und Tastaturroutinen. Du kannst in deren Arbeit nicht eingreifen, hast aber über Schnittstellen auf alle Daten Zugriff, die Du benötigst, um sie effizient zu verwenden.
Stell Dir vor, Du entwickelst ein Programm, das die Charakteristika von Fahnenmasten analysiert. Du würdest nicht unbedingt irgendwelche Daten, die angeben, wo Dein Programm gespeichert ist, als die Höhe eines Fahnenmasten verwenden wollen oder die Cursorposition als des Fahnenmasten Dicke oder Farbe. Der gesamte Code für den Fahnenmasten wird separat entwickelt und erst wenn er fertig ist, kann er auch verwendet werden. Für die Verwendung genügen dann einige wenige Operationen mit der Klasse. Die Tatsache, daß die Daten vor Dir sicher verwahrt und versteckt sind, bewahrt Dich vor "Dummheiten", wenn Du um 2 Uhr früh arbeitest, um irgendeine deadline (heißt nicht umsonst so) einzuhalten. Dies wird Zugriffsschutz genannt und ist einer der großen Vorteile, die objektorientiertes gegenüber prozeduralem Programmieren hat.
Wie aus dem oben gesagten deutlich wird, ist objektorientiertes Programmieren als solches nicht wirklich neu, in einigen wenigen und kleinen Punkten wird es verwendet, seit es Computer gibt. Die neueste Entwicklung ist es allerdings, der Programmiererin die Möglichkeit zu geben, daran teilzuhaben und ihre Programme zu partionieren, um die Fehleranfälligkeit zu verringern und die Qualität zu erhöhen.
Copyright © 1997, 1998, 2001-2006 Heinz Tschabitscher - Letzte Änderung 12. Dezember 2005
Heinz Tschabitscher - | Datenschutz | Impressum - Kommentare, Kritik, Anregungen, Ideen?