06-11-2007, 05:35 PM
Citation :La seule cause de perte de perfs, c'est la multiplication des couches. L'utilisation du concept MVC fait perdre des perfs, l'utilisation d'un moteur de templates fait perdre des perfs, l'utilisation d'un objet PHPMailer au lieu d'appeler directement mail() fait perdre des perfs, etc...Théoriquement oui
Dans la pratique c'est pas si sur!
Je veux dire par là que la POO de part le fait qu'elle permet une maintenance beaucoup plus simple, engendre forcement, en plus de la clarté du code qui n'est pas à négliger sur de gros projet, une amélioration des perf due à un code mieux fait car mieux construit
Evidement sur un test benchmark on tient à mettre en place un systeme qui soit quasi identique afin de comparer les 2 systemes et rien que çà donc oui fondamentalement l'appel à la methode est plus long.
Mais si on y regarde de plus prêt le test benchmark est fait sur un cas simple ou l'on a pris soins de ne faire varier que le parametre methode/function
Autrement dit on ignore l'avantage qu'on tire par la construction d'un code plus construit, puisqu'on s'arrange pour les construire aussi bien l'un que l'autre sans pour autant regarder lequel aurra été le plus facile à construire ,à maintenir et le benchmark ne regarde pas du tout cette aspect de mainteance puisqu'on l'essaye la encore sur des cas simple
Autrement dit le benchmark prouve que fondamentalement plus on rajoute de couche plus on baisse les perf. Notre programme serais donc bien plus performant en Assembleur qu'en PHP
Pourtant quelques hoses me dit qu'en pratique çà n'est pas du tout vrai car notre assembleur deviendrait bordelique a souhait au bout d'1 ou 2 ans de maintenance si déjà on a réussie à programmer la meme chose en assembleur....
Bref donc ce que je pense c'est que la POO permet surtout de se simplifier la vie si on sait comment s'y prendre et que par conséquent çà a des effet bénéfique sur les perf!