Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/04/2008, 01h04   #1
Membre régulier
 
Inscription : mai 2007
Messages : 144
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 144
Points : 78
Points : 78
Par défaut __autoload() et performances ?

Bonsoir à tous,

Question : est-ce que l'utilisation de l'__autoload() est judicieuse ?

Avantage : n'inclut que les classes nécessires.
Inconvénient : on rajoute chaque fois des étapes avant l'inclusion des fichiers.

Bref, qu'en penser ?

Merci,
Evocatii
Evocatii est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2008, 06h12   #2
Inscrit
 
Avatar de is_null
 
Inscription : octobre 2006
Messages : 637
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 637
Points : 690
Points : 690
Je suppose que dans 99% des applications en PHP, c'est le dernier endroit ou il est judicieux de chercher l'opimisation, a l'inverse du code de vos classes par exemple.

Effectivement, il est judicieux d'utiliser une fonction dans __autoload qui permet de charger toutes les classes d'un coup, le jour ou l'on decide que __autoload ralentie trop l'application.

Pour profiler l'application, on peut utiliser xdebug et kcachegrind.

http://php.developpez.com/faq/?page=xdebug
__________________
Q: Dois-je haïr et cogner sur Microsoft ?
R: Non, vous n'êtes pas obligé. Non pas que Microsoft n'est pas écoeurant, mais il y avait une culture hacker bien avant Microsoft et il y en aura une bien après que Microsoft aura été de l'histoire ancienne. Toute énergie dépensée à haïr Microsoft serait mieux employée par vos compétences et votre passion. Écrivez du bon code, cela brisera suffisamment Microsoft sans polluer votre karma.
Comment devenir un hacker ? par Eric Steven Raymond
is_null est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2008, 10h09   #3
Futur Membre du Club
 
Inscription : avril 2008
Messages : 19
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 19
Points : 18
Points : 18
A vérifier, mais il me semble que __autoload est abandonné dans la version 6 de PHP.
Dlteck2000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2008, 10h59   #4
Membre régulier
 
Inscription : mai 2007
Messages : 144
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 144
Points : 78
Points : 78
Bonjour,

Citation:
Envoyé par is_null Voir le message
Je suppose que dans 99% des applications en PHP, c'est le dernier endroit ou il est judicieux de chercher l'opimisation, a l'inverse du code de vos classes par exemple.

Effectivement, il est judicieux d'utiliser une fonction dans __autoload qui permet de charger toutes les classes d'un coup, le jour ou l'on decide que __autoload ralentie trop l'application.

Pour profiler l'application, on peut utiliser xdebug et kcachegrind.

http://php.developpez.com/faq/?page=xdebug
Je ne cherche pas à optimiser une application, mais c'est simplement parce que je trouve la question intéressante.

Par exemple, imaginons un framework intégrant plusieurs milliers de fichiers. Est-ce bien raisonnable de les inclure tous à chaque appel ? Alors qu’un autoload aurait pu sélectionner automatiquement que le nécessaire. (Il peut être laborieux de gérer les inclusions manuellement.)

http://blog.developpez.com/index.php...&c=1&tb=1&pb=1

Citation:
Envoyé par Dlteck2000 Voir le message
A vérifier, mais il me semble que __autoload est abandonné dans la version 6 de PHP.
Ah d'accord merci de l'info. Vais essayer d'en savoir plus.
Evocatii est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2008, 16h25   #5
Inscrit
 
Avatar de is_null
 
Inscription : octobre 2006
Messages : 637
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 637
Points : 690
Points : 690
Citation:
A vérifier, mais il me semble que __autoload est abandonné dans la version 6 de PHP.
Non, a l'instant de ce post, rien n'est prevu de changer pour __autoload().

Citation:
Par exemple, imaginons un framework intégrant plusieurs milliers de fichiers. Est-ce bien raisonnable de les inclure tous à chaque appel ? Alors qu’un autoload aurait pu sélectionner automatiquement que le nécessaire. (Il peut être laborieux de gérer les inclusions manuellement.)
Disont que ce n'est pas judicieux pendant les phases de developpement, test et pre-production.
Par contre, en phase de production, en combinaison avec XCache, ca peut etre interressant; et encore: __autoload() en soit, ne pose pas de problemes.

D'ou ma certitude: le mieux est d'implementer un systeme d'autoload capable des deux.

Personnellement, j'utilise le composant Base de eZ Components pour gerer mes chargements de classes, et les exceptions les plus courantes.
__________________
Q: Dois-je haïr et cogner sur Microsoft ?
R: Non, vous n'êtes pas obligé. Non pas que Microsoft n'est pas écoeurant, mais il y avait une culture hacker bien avant Microsoft et il y en aura une bien après que Microsoft aura été de l'histoire ancienne. Toute énergie dépensée à haïr Microsoft serait mieux employée par vos compétences et votre passion. Écrivez du bon code, cela brisera suffisamment Microsoft sans polluer votre karma.
Comment devenir un hacker ? par Eric Steven Raymond
is_null est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h35.


 
 
 
 
Partenaires

Hébergement Web