Daniel Thoma: Vorteile und Beispiele zur OOP

Beitrag lesen

Hallo Klaus,

Naja C# und Java werden eher für den Nicht-Web(HTTP)-Bereich verwendet.

An der Aussage kann man durchaus zweifeln. Der Markt für (individuelle) Webanwendungen ist zur Zeit so groß im vergeleich zu Desktopanwendungen, dass ich mir zumindest nicht so sicher bin, ob es nicht mehr C#- und Java-Webanwendungen gibt.

Klar, dies wird dem Programmierer alles nur vorgegaukelt und im Hintergrund läuft es so ab wie bei PHP (Request-Response), aber bei Asp.Net hat man schon eher das Gefühl Objekt orientiert zu programmieren.

Das ist meines erachtens ein entscheidender Punkt. OOP ist in der typischen, datenbankbasierten Webanwendungen, bei der im Wesentlichen die Webanwendung HTTP-Requests in Datenbankanfragen und zurück übersetzt, schwieriger einzusetzten. Man kann OOP zur Organisation dieses Transformationsprozesses einsetzen (das ist ja, was man mit dem MVC-Ansatz im wesentlichen tut.). Eine Anwendung, bei der auch das Datenmodell objektorientiert aufgebaut ist, ist aber umständlicher zu realisieren und bringt erstmal nicht so viel nuten. Solche Datenobjekte sollen ja Zustand und Verhalten der "Realität" abbilden. Der Zustand wird aber bei solchen Anwendungen in der Datenbank abgelegt und das Verhalten über Datenbankzugriffe realisiert.
Erst mittels Frameworks, die die Datenbank und evtl. auch die HTTP-Requests vor der eigentlichen Anwendung verbergen und eine Umgebung ähnlich einer Desktopanwendung vorgaukeln, kann man OOP wirklich optimal anwenden. Also Object-Relation-Mapping für die Datenbank-Seite und etwas wie Java Server Faces (oder ASP.NET?), das Ereignisorientierte GUI-Programmierung ermöglicht, für die HTTP-Seite.
Gerade im PHP-Umfeld gibt es da wohl noch relativ wenig und wenn doch, wird es in typischen PHP-Anwendungen nicht verwendet.

Ich hoffe mein Standpunkt ist etwas klarer geworden. Also ich kann es nur empfehlen, evt. mal mit C# eine (lokale) Anwendung zu programmieren.

Dem würde ich auch zustimmen. Webanwendungen eignen sich meiner Meinung nach auch nur begrenzt um OOP wirklich zu lernen. Man kann Webanwendungen objektorietiert schreiben, aber um nicht an den notwendigen Klimmzügen zu scheitern, muss man dazu eigentlich schon wissen, wie man wirklich objektorientierte Anwendungen baut.

Grüße

Daniel