3.3 | Gegenüberstellung |
Abschließend seien die wichtigsten Unterschiede zwischen der prozeduralen und der objektorientierten Programmierung noch einmal gegenübergestellt:
- In der prozeduralen Programmierung sind die Daten von den Prozeduren getrennt. Objekte dagegen vereinigen Daten und die Methoden, mit denen auf die Daten zugegriffen werden kann, in sich.
- In der prozeduralen Programmierung gibt es intelligente Unterprogramme, die die ihnen übergebenen Daten manipulieren. Objekte dagegen enthalten »intelligente« Daten, die auf Botschaften reagieren können. Die Botschaften werden durch Methoden realisiert.
- Falls man auf ein Problem trifft, das mit einem bereits gelösten Problem Änhlichkeit hat, muss man in der prozeduralen Programmierung die Prozeduren kopieren und entsprechend abändern. Objekte dagegen können vererbt und für das konkrete Problem angepasst und erweitert werden.
- In der prozeduralen Programmierung muss man explizit Daten verändern und Unterprogramme aufrufen. Objekte dagegen erhalten Botschaften, auf die sie in ihrer Weise reagieren. Wie sie das tun, ist für den Benutzer des Objekts nicht sichtbar. Beim prozeduralen Ansatz steht der Lösungsweg, bei der objektorientierten Programmierung das Problem selbst im Vordergrund.