DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Tuto WINDEV / Tuto - Optimiser un projet
  • Leçon 2 - Analyseur de performances
  • Principe de l'analyseur de performances
  • Lancer l'analyseur de performances
  • Analyse du résultat
  • Résultat de l'exemple
  • Optimisation de l'application
  • Conclusion

Tuto - Optimiser un projet

Leçon 2 - Analyseur de performances
Ce que vous allez apprendre :
  • Principe de l'analyseur de performances.
  • Lancer l'analyseur de performances.
  • Analyser le résultat.
Durée de la leçon 15 mn
Principe de l'analyseur de performances
L'analyseur de performances (appelé également Profiler) est un outil permettant de vérifier et d'optimiser le temps d'exécution des traitements de votre application.
Son principe est simple :
  • Vous testez votre application.
  • Pendant ce test, l'analyseur de performances répertorie toutes les actions effectuées et sauvegarde les temps d'exécution de chacun des traitements exécutés.
A la fin du test, l'analyseur de performances vous présente :
  • les 10 manipulations qui ont pris le plus de temps,
  • la durée et le nombre d'appels de tous les traitements exécutés.
Le projet "WD Optimisation" contient une fenêtre spécifique permettant de visualiser des exemples de résultats obtenus avec l'analyseur de performances.
Lancer l'analyseur de performances
L'analyseur de performances peut être lancé directement depuis l'éditeur de WINDEV.
Pour lancer l'analyseur de performances sur le projet "WD Optimisation" :
  1. Sous le volet "Projet", dans le groupe "Audit et performances", déroulez "Analyser les performances" et sélectionnez "Analyser les performances".
  2. Cliquez sur le bouton "Fenêtre de test de l'analyseur de performances".
  3. Cliquez sur le bouton "Traitement à analyser".
  4. Validez la fenêtre d'information et arrêtez le test du projet. La fenêtre du compte-rendu de l'analyseur de performances apparaît.
Les résultats sont affichés dans plusieurs onglets :
  • l'onglet "Synthèse" présente les dix traitements qui ont pris le plus de temps.
  • l'onglet "Cartographie" présente une vision graphique des traitements les plus importants.
  • l'onglet "Détail" présente tous les traitements lancés lors du test de l'application (classés du plus long au plus rapide).
  • l'onglet "Appels" permet de visualiser le détail des opérations réalisées dans un traitement.
Analyse du résultat

Résultat de l'exemple

Détaillons le résultat dans le cas de notre exemple.
  • L'onglet "Synthèse" présente les dix traitements les plus consommateurs de temps. Dans notre exemple, nous pouvons voir que la procédure locale "MetAJourStockProduits" prend plus de 3 secondes à s'exécuter.
    Analyseur de performances - Synthèse
  • L'onglet "Cartographie" permet d'identifier de manière visuelle ce qui a pris le plus de temps. Dans notre cas, c'est un appel à la fonction Ping :
    Analyseur de performances - Cartographie
  • L'onglet "Détail" présente tous les traitements ou événements appelés du plus long au plus rapide.
    Analyseur de performances - Détail
Dans notre cas, l'onglet "Détail" permet de retrouver l'appel à la fonction "Ping" dans les éléments prenant le plus de temps.
  1. Sélectionnez cette ligne. Nous allons voir dans le code si un problème peut expliquer ce ralentissement.
  2. En cliquant sur le bouton "Appels", le détail des appels de la procédure MetAJourStockProduits apparaît.
  3. Sélectionnez la ligne "Ping" et cliquez sur le bouton "Code" : la ligne de code correspondante est affichée sous l'éditeur de code.
  4. Fermez l'analyseur de performances.
  5. La ligne de code exécutée est la suivante :
    // Vérifie l'accessibilité du serveur fournisseur
    Ping("adr-fournisseur")
    Le ralentissement vient du fait que l'adresse spécifiée pour la fonction Ping est inaccessible.
    L'éditeur de code indique qu'une erreur a été trouvée en exécution sur cette ligne de code en affichant une icône "Sens interdit". En survolant cette icône, le détail de l'erreur est affiché.

Optimisation de l'application

Nous allons optimiser ce code :
  1. Remplacez la ligne de code contenant la fonction Ping par la ligne de code suivante :
    // Vérifie l'accessibilité du serveur fournisseur
    Ping("www.google.fr")
  2. Enregistrez le code (Ctrl + S).
Nous allons maintenant relancer l'analyseur de performances :
  1. Sous le volet "Projet", dans le groupe "Audit et performances", déroulez "Analyser les performances" et sélectionnez "Analyser les performances".
  2. Le test du projet se lance.
  3. Cliquez sur le bouton "Fenêtre de test de l'analyseur de performances".
  4. Cliquez sur le bouton "Traitement à analyser".
  5. Validez la fenêtre d'information et arrêtez le test du projet. La fenêtre du compte-rendu de l'analyseur de performances apparaît.
  6. Sous l'onglet "Cartographie", la fonction Ping n'apparaît plus avec la même importance.
    Analyseur de performances - Cartographie
L'analyseur de performances a permis d'optimiser notre application.
Fermez la fenêtre de rapport de l'analyseur de performances.
Conclusion
Nous avons vu dans cette leçon une utilisation interactive de l'analyseur de performances.
L'analyseur de performances peut également être lancé depuis un de vos traitements en WLangage, grâce aux fonctions suivantes :
  • AnalyseurDébut, qui lance la "collecte d'informations" pour l'analyseur de performances.
  • AnalyseurFin, qui arrête la "collecte d'informations" pour l'analyseur de performances.
Dans ce cas, seul le code présent entre les fonctions AnalyseurDébut et AnalyseurFin est analysé. Le résultat est enregistré sous forme d'un fichier WPF qui peut être lu par WINDEV.
Pour plus de détails, consultez Analyseur de performances.
Leçon précédenteSommaire
Version minimum requise
  • Version 2024
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 16/11/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale