"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

PHP5 overloading

iCA- 05.01.2005 - 22:20 1195 19
Posts

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
nicht nur "funktionen", sondern auch sprachteilen, wie eben, dem "new" statement, man kann aber nur exceptions catchen, die durch den "user" per throw geworfen werden...
sicher, ich kann exceptions noch immer gut dazu benutzen um bei einem speziellen fehler eine komplette objektstruktur zu verlassen - was ja schon sehr praktisch ist, aber zum beispiel funktioniert wiederum "throw" nicht innerhalb der __autoload() function...
Bearbeitet von watchout am 14.01.2005, 19:46

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4452
Verstehe. Persoenlich verwende autoload nicht, hab das Problem aber auf php-dev verfolgt. Fuer alle anderen Funktionen: im Endeffekt bin ich dazu uebergegangen, fuer alle Funktionen, die mir im Fehlerfall meine Applikation in einem unbrauchbaren Zustand hinterlassen, habe ich Wrapper-Funktionen geschrieben, die dann die Exceptions schmeissen (fopen, getimagesize, mysql_connect, etc.). Mit einem entsprechendem bytecode-cache hab ich auch noch keine Performanceprobleme gesehen und lebe ziemlich gluecklich damit.

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
Zitat von Rektal
Verstehe. Persoenlich verwende autoload nicht, hab das Problem aber auf php-dev verfolgt. Fuer alle anderen Funktionen: im Endeffekt bin ich dazu uebergegangen, fuer alle Funktionen, die mir im Fehlerfall meine Applikation in einem unbrauchbaren Zustand hinterlassen, habe ich Wrapper-Funktionen geschrieben, die dann die Exceptions schmeissen (fopen, getimagesize, mysql_connect, etc.). Mit einem entsprechendem bytecode-cache hab ich auch noch keine Performanceprobleme gesehen und lebe ziemlich gluecklich damit.
in wirklichkeit ist das aber redundant, und das find' ich ugly - und auch mit Bytecode und wwi wirst du merklichen performanceverlust bemerken wenn du deine wrapper-funktion in oft ausgeführten schleifen verwendest: zb. eine wrapper-funktion für eine division (um division durch 0 abzufangen)

übrigens müssen wir uns über die bytecode-sache mal unterhalten ;) :cool:

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4452
Ugly ist relativ. PHP selbst ist nicht Ugly? Well, ich pass natuerlich auf Loops auf. Aber so oft kommt das net vor. Aber in der Praxis hat sichs gezeigt, dass es nur vorteilhaft ist. Ich groben brauch ich mir net besonders viel Gedanken machen, wo ueberall auch nicht Fehler passieren koennen. Die werden global, ueber dem main execution path, abgefangen und entsprechend der Applikation drauf reagiert.

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4452
Zitat
übrigens müssen wir uns über die bytecode-sache mal unterhalten ;)

Weiss zwar net auf was du hinauswillst, aber ich bin sicher nicht so einer derjenigen, die Bytecode per Hand erstellen =)
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz