25/02/2011

Performance PHP : l'héritage

Quand on parle d'orienté objet, une crainte récurrente est celle de la performance.Or le moteur PHP Objet est très bien optimisé :

(les benchs suivants portent sur des moyennes de tests executés 10 000 fois minimum, sous Linux en PHP 5.3.3 standard, et sont exprimés en secondes)

Héritage

Contrairement aux idées reçus, instancier une classe qui en hérite de plusieurs autres n'est pas plus lent qu'instancier une classe mère :

Appel de classes statiques (secondes):

Occurrences 4 héritages aucun héritage
10000 0,7106118202 0,7099120617
1000 0,0733890533 0,0721051693

test de Performance PHP 5.3 : héritage et appels statiques

Appel de classes instanciées (secondes):

Occurrences 4 héritages aucun héritage
10000 0,7323720455 0,7246758938
1000 0,0770690441 0,0738449097
test de Performance PHP 5.3 : héritage et appels sur des instances

La différence est négligeable, même sur une grosse application.

En conclusion, l'utilisation massive de l'héritage ne nuit pas à la performance d'une application...

blog comments powered by Disqus