Streng gesehen ist PHP keine Programmiersprache die als Objektorientierte
Programmiersprache bezeichnet werden kann, dennoch hat PHP einige
Möglichkeiten, mit welchen man annähernd Objektorientiert
Programmieren kann. Im ersten Teil soll aber zunächst geklärt
werden, was überhaupt Objektorientierte Programmierung ist.
Bei der objektorientierten Programmierung, taucht der Begriff eines
Objektes immerzu auf. Doch was ist ein Objekt überhaupt?
Im Alltag wird die Bezeichnung eines Objektes oft verwendet, doch
welche Eigenschaften hat ein solches Objekt.
Eine Maus ist zum Beispiel ein Objekt. Sie hat aber so viele Eigenschaften,
und Fähigkeiten, das man diese nicht mehr erfassen kann.
Die Handlung der Maus sind nicht vorhersagbar, oder fest bestimmt.
Ein programmiertechnisches Objekt ist in dieser Hinsicht einfacher
zu Handhaben. Diesen Objekten kann man ein festes Verhalten
"einprogrammieren". Diese Strukturen und Funktionen
lassen sich dann auf jedes andere Objekt anwenden, welches nach
diesem Bauplan gebaut wurde.
Die Vielfalt dieser Programmiertechnik ist oft nicht leicht zu
erkennen.
Schreibt man gewöhnliche Skripte oder Programme, dann werden
die Daten in Variablen gespeichert, und diese dann z.B. über
Kontrollstrukturen verarbeitet, und neue Werte hinzugefügt,
oder verändert.
Bei der Objektorientierten Programmierung gibt es solche Techniken
nicht. Hier wird ein Objekt nicht als Speicherplatz, wie eine Variable,
gesehen, sondern ist ein komplexes Konstrukt, das eigenständig
ist und welchem man beliebige Eigenschaften geben kann.
Objekte sind nur Ergebnisse aus einer Klasse. Eine Klasse
ist wie ein festes Rezept, nach dem diese Objekte gebildet werden.
Hier ist auch schon einer der wichtigsten Aspekte der Objektorientierten
Programmierung anzusiedeln. Diese Objekte sind eigenständige
Körper, ein Objekt muss nicht dem anderen gleichen.
Ein Beispiel ist das Objekt eines neuen Benutzers, in einer Community.
Der Besucher gibt seine Daten ein, Vorname, Nachname, Adresse,…
Nach diesem wird ein neues Objekt geformt, ein einmaliges Objekt,
nämlich das Objekt eben dieses Benutzers.
Nach dem Ablauf des Programms verlieren sich diese Objekte, wie
Variablen. Sie werden nicht gespeichert. Hierzu müssen Datenbanken
eingesetzt werden, in welchen die Daten gespeichert werden. Aus
diesen Daten kann dann, z.B. bei einem Login das Objekt des Benutzers
wieder gebildet werden.
Eine Klasse ist wie gesagt ein fest, doch auch das ist in der Hinsicht
nicht richtig. Von dieser Klasse kann man weitere Klassen ableiten.
Ein einfaches Beispiel ist z.B. eine Klasse welche einen Baum als
Objekt erzeugt. Das ganze hört sich ein wenig…an, man kann
es aber so sehen.
Jetzt will man eine Klasse programmieren, die einen Apfelbaum als
Objekt erstellt. Warum sollte man dann nicht die erste Klasse weiterverwenden,
sodass man nur noch einige Funktionen für die Erstellung eines
Apfels an diesem Baum programmieren muss.
Diese Möglichkeit nennt man in der Sprache der Objekte, "Vererbung".
Die Daten einer Klasse werden an die einer anderen vererbt.
Die Stärke der Programmierung auf diese weiße zeigt sich
schnell. Objektorientierte Programme sind möglichst einfach
aufgebaut, sodass man von jeder Klasse die Möglichkeit hat,
eine weitere abzuleiten.
In diesem ersten Teil sind die wichtigsten Begriffe in bezug auf
OOP definiert werden. Im nächsten Teil geht es an die Praxis
mit PHP.
(tf)