Hadi: / (PHP) OOP vs. gekapselte Funktionen

Beitrag lesen

Hallo Forum,
ich entwickle nun schon seit einigen Jahren Webandwendungen in PHP und verwende dabei praktisch immer die Kapselung einzelner Aufgaben in Funktionen.

Hier ein Beispiel aus einem Onlineshop:

  • function draw_products_list($_products) - erstellt eine HTML-Liste der übergebenen Produkte unter Verwendung div. anderer Funktionen

  • function search_products($searchstring,....) - returned ein Array mit passenden/der Suche entsprechenden Artikelnummern, die dann z.B. für die Ausgabe an den User an draw_products_list() übergeben wird.

So habe ich dann z.B. auch noch Funktionen, die mir alle Produkte (bzw. deren Artikelnummer) einer Kategorie, den Warenkorb usw. usf. als Array zurückgeben, mit der ich dann wiederum eine HTML-Liste mittels draw_products_list() ausgeben kann, andererseits aber auch wieder andere Funktionen, die mir mit einem Array mit Artikelnummern CSV-Dateien generieren, einen Warenkorbinhalt speichern usw. usf.
Außerdem gibt es z.B. eine zentrale Funktion product(), von der die ganzen Daten ausgelesen werden - so können ggf. spätere Änderungen der Datenbankstruktur, das Hinzufügen neuer Produktattribute etc. pp. eingepasst werden.

Jetzt fahre ich damit eigentlich recht gut, lese aber immer wieder, dass OOP das einzig Wahre sei und ich in Zukunft alles nur noch in Objekte usw. packen soll, meine jetzige Technik sei totaler Schwachsinn.
Argumente dazu habe ich bisher jedoch noch keine wirklichen gehört - und kann auch keine finden.

In manchen Bereichen machen Objekte ja Sinn (dort verwende ich sie ja auch), aber meistens reicht es doch auch einfach, verschiedene Funktionen zu erstellen, die sich gegenseitig aufrufen und Teilaufgaben übernehmen.
Die Wiederverwertbarkeit ist auch meist gegeben, ich verwende viele Funktionen oder Funktionskombinationen in mehreren Projekten, habe da schon mein Standardreportoire...

Deshalb frage ich hier einmal: Kann mir einer sagen, was ich allgemein mit OOP - insbesondere im Vergleich zu meiner "Technik" - für Vorteile habe, gerne auch im Bezug auf obiges Shop-Beispiel.

Dass ich nichts vererben kann, ist klar, man kann Funktionen aber auch später noch erweitern, ohne die Abwärtskompatibilität zu gefährden - aber sonst?

Ich freue mich auf konstruktive Beiträge,

Hadi.