Sommaire

Les risques de la sur-optimisation

Ce livre n’explique pas de manière approfondie comment fonctionne .NET. Il n’entraîne pas le lecteur sur les pentes ardues de l’optimisation d’algorithme. Il se consacre aux 80 % de performances que nous pouvons gagner en détectant et en éliminant les 20 % de code les plus défectueux. À de très rares exceptions près, aucun logiciel du commerce n’est optimisé « à fond ». Ceci est quasi impossible théoriquement, et surtout absurde d’un point de vue commercial.

Lorsque notre application prend vingt secondes pour traiter une interaction utilisateur raisonnablement complexe en termes de métier, il y a de bonnes chances que nos problèmes de performance viennent simplement d’une erreur de programmation quelque part dans notre code. En analysant l’application (on parle de "profilage"), le cœur du problème est en général trouvé en quelques heures. Une solution simple permet souvent de diviser les temps de traitement par un facteur appréciable, voire parfois au-delà de nos espérances.

Ne jetons pas la pierre aux développeurs : entre les tests unitaires, les règles de nommage, les normes de qualité, le processus de livraison, il est impossible d’accorder toute son attention aux implications d’un code. Un développeur peut parfois passer des journées entières à ...