Mailinglisten-Archive |
Hallo Hannes, > Ich persönlich bin auch mit PHP 5 zur konsequenten OOP übergegangen - > vielleicht auch eine Nebenschreinung meines Java-Wissens. Das Problem > ist, dass in den herkömmlichen PHP-"Lehrwerken" nichts über > Softwaredesign oder Designpattern geschrieben steht weshalb viele > Einsteiger gar nicht auf die Idee kommen, selbige zu verwenden auch > wenn sie das Leben oft sehr viel einfacher machen würden. ich denke man sollte die Art der Codegenerierung an die Realität der Programmiersprache anpassen. Wenn ich eine Sprache wie PHP habe die im Normalfall ohne Accelaratoren bei jedem Script Aufruf das ganze Script parsen und complieren muss dann sollte ich mir Gedanken machen ob es Sinn macht unnötig viel Overhead zu produzieren. Erstens ist das Parsen von Klassen wesentlich aufwendiger, zweites ist es auch noch mehr Text und drittens sind Methodenaufrufe in Klassen auch noch aufwendiger. Das ganze will heissen: Wenn ich nur Methoden habe die keine Datenbindung haben dann macht es in PHP keinen Sinn die in eine Klasse zu packen nur weil sie irgendwie zusammengehören könnten. Da PHP eben diese Nachteile für 100% OOP hat würde ich einfach meinen Code darauf abstellen. Ein eigener Namespace könnte ein Argument sein - aber da würde ich den Namespace einfach zum Teil des Methodennamens machen. Zum Thema Design Pattern: Ich habe letztens statt einer for-Schleife um für alle Elemente eines Arrays eine Methode auszurufen doch tatsächlich eine Visitor-Pattern-Konstruktion gesehen - sprich ein sinnloser Objektmethodenaufruf umsonst pro Array Element - das nenne ich Fetisch und absolut unnötig. Das ganze sollte nur kurz eine Erläuterung und Beispiele sein was ich mit meinen Aussagen konkret meinte. LG, Andreas
php::bar PHP Wiki - Listenarchive