Perception et réalité en matière de performances

Les utilisateurs de votre application sont les ultimes juges de ses performances. Les développeurs peuvent mesurer les performances d’une application en terme de la durée d’exécution de certaines opérations ou du nombre d’occurrences d’objet créées. Ces mesures ne présentent cependant aucun intérêt pour l’utilisateur. Celui-ci mesure parfois les performances selon d’autres critères. Par exemple, l’application s’exécute-t-elle rapidement et sans saccades ? Réagit-elle rapidement aux entrées ? A-t-elle un impact négatif sur les performances du système ? Pour tester les performances perçues, posez-vous les questions suivantes :

  • Les animations sont-elles fluides ou saccadées ?

  • Le contenu vidéo est-il fluide ou saccadé ?

  • Les clips audio s’exécutent-ils en continu ou contiennent-ils des interruptions ?

  • La fenêtre scintille-t-elle ou se vide-t-elle pendant les opérations de longue durée ?

  • Y a-t-il un décalage entre le moment où vous effectuez une saisie et l’affichage du texte ?

  • Si vous cliquez sur un élément, la réponse est-elle instantanée ou un délai se produit-il ?

  • Le ventilateur de l’unité centrale fait-il plus de bruit lorsque l’application s’exécute ?

  • Sur un ordinateur portable ou un périphérique mobile, la batterie se décharge-t-elle rapidement lors de l’exécution de l’application ?

  • Les autres applications réagissent-elles plus lentement lorsque l’application s’exécute ?

Il est important de faire la distinction entre perception et réalité, car vous ne procéderez pas nécessairement de même pour optimiser les performances perçues ou pour accélérer au maximum les performances. Veillez à ce que l’application n’exécute jamais de tels volumes de code que le moteur d’exécution se trouve dans l’impossibilité de mettre à jour l’écran et de recueillir les entrées de l’utilisateur à fréquence régulière. Pour parvenir à cet équilibre, il est parfois nécessaire de diviser une tâche de programme en plusieurs parties, entre lesquelles le moteur d’exécution pourra mettre l’écran à jour (voir Performances de rendu pour plus de détails).

Les astuces et techniques décrites ci-après visent à vous permettre d’optimiser l’exécution du code lui-même et les performances perçues par l’utilisateur.