Mailinglisten-Archive |
Lutz Zetzsche wrote: > Hallo Sebastian, > > Am Donnerstag, 26. Oktober 2006 08:45 schrieb Sebastian Mendel: >> abgesehen davon das ich nicht weiß was das mit Java zu tun hat und >> warum Java hier immer als Referenz herhalten soll, etwas allgemein >> gehalterene Beschreibungen für OO Programmierung wären mir lieber, >> bestätigt das doch nur das Überladen hier der falsche Begriff ist und >> überschreiben und neu implementieren ist jawohl auch das selbe. >> >> http://de.wikipedia.org/wiki/%C3%9Cberladen >> http://de.wikipedia.org/wiki/%C3%9Cberschreiben > > ich habe Java als Beispiel gewählt - wie ich gerade gesehen habe, hätte > es wohl auch C++ sein dürfen, nur das kenne ich nicht ;-) -, weil ein > Beispiel konkret ist und hilft, die Begrifflichkeit zu klären. > > Theoretisch hast Du recht. Es wäre schöner, über die allgemein > gehaltenen Beschreibungen der OOP zu gehen. Jemand wie ich - Thema > Autodidakt und mangelnder theoretischer Hintergrund ;-) - geht da aber > schnell verloren. hey, das würde ich so nicht unterstreichen, bin selber Autoditakt und sehe es genau andersrum wie du, natürlich lernt man anhand von Beispielen einer bestimmten Programmiersprache, aber man sollte nie aus den Augen verlieren wie es eigentlich gedacht ist und nciht nur wie es in EINER Programmiersprache umgesetzte wurde, genau wie z. B. mit dem Syntax von MySQL und dem SQL Standard > Grund ist die unterschiedliche Umsetzung von diesen Prinzipien wie > Überladen in den verschiedenen Programmier- und Skriptsprachen, die > teilweise so gestaltet ist, daß jemand wie ich nicht mehr in der Lage > ist, darin das Überladen zu erkennen. Letztlich hat damit der Begriff > immer eine sprachspezifische Bedeutung, der mit dem Begriff aus der > reinen Theorielehre nicht mehr ganz im Einklang stehen muß. > > Also ein Vergleich, der sicherlich deutlich macht, was ich meine: > > http://de.wikipedia.org/wiki/%C3%9Cberladen > http://www.php.net/manual/en/language.oop5.overloading.php > http://www.galileocomputing.de/openbook/javainsel5/javainsel02_006.htm#Rxx747java02006040000AD1F02C237 Warum? Das deckt sich meines erachtens. Das Grundprinzip des Überladens ist in den Sprachen umgesetzt, die 'Details' weichen etwas ab ;-) , sind weniger restriktiv als die Theory. Bei PHP wird halt 'nichts' ;-) überladen OK, im Falle von PHP würde ich eigentlich auch nicht von Überladen reden, sondern eher von einem 'Unterladen' ;-) > http://www.python.org/doc/faq/programming.html#how-can-i-overload-constructors-or-methods-in-python Hier wird die selbe vorgehensweise beschrieben wie man sie in PHP verwenden würde um das Überladen zu 'emulieren' Also eigentlich gibt es kein Überladen in Python, wie in PHP eigentlich auch nicht. -- Sebastian Mendel www.sebastianmendel.de
php::bar PHP Wiki - Listenarchive