Mailinglisten-Archive |
Hallo Norbert, Am Donnerstag, 6. Juli 2006 22:53 schrieb Norbert Pfeiffer: > es geht mir nicht um "Gisela", es geht mir um "Peter". > Dessen Code wird durch das "extends" verdorben. > Wenn man z.B.: > > class Peter extends Gisela {} > class Peter extends Julia {} > class Peter extends Sieglinde {} > class Peter extends Thea {} > > anwenden koennte, muss man viermal "Peter" pflegen, > weil die Core-Developer hier keine Dynamik zulassen. > > Und einfach umdrehen geht auch nicht, denn genau so > wenig, wie sich "Peter" mit einer Frau begnuegt, > beschraenken sich die Damen mit einem Kerl. > > Sinnvoll waere IMHO, dass man bei der Instantiierung > angibt, mit welcher Klasse erweitert wird, und es nicht > schon im Quellcode festschreiben muss. Du kannst ja mal neben der prozeduralen und der objektorientierten Programmierung eine neue einführen. :-) Mit Objektorientierung hat das, was Du schreibst, nicht wirklich etwas zu tun. Es gibt aber Leute die behaupten, daß "extends" böse ist und daß man anstattdessen "implements" verwenden soll. Hannes hatte ja schon auf Interfaces verwiesen. Dazu gibt es folgenden Artikel: http://www.javaworld.com/javaworld/jw-08-2003/jw-0801-toolbox.html > Wie etwas in Java geloest ist, sollte einem immer als > warnendes Beispiel dienen. Die Typen haben schon M$ > gross gemacht, wer weiss, was sie mit Java bezwecken. Was soll man dazu sagen. :-) Nur soviel: In Sachen OOP orientieren sich die PHP-Entwickler nach meiner Erinnerung sehr stark an Java. Das wird schon einen Grund haben. Im Übrigen ist OOP nicht gleich Java. Python ist beispielsweise auch objektorientiert. Die verschiedenen Sprachen setzen OOP allerdings in gewissen Grenzen unterschiedlich um. Ein Beispiel hatten wir gestern mit der Mehrfachvererbung, die in Java und PHP nicht möglich ist, in Python aber schon. Viele Grüße Lutz
php::bar PHP Wiki - Listenarchive