Chez oim, forum libreChez oim, forum libre

favicon Google Recherche avancée  

troll

ATTENTION AUX TROLLS !
Signalez les en cliquant sur "signaler au modérateur" sous chaque post.
Ne leur faites jamais face sans fermer la bouche, c'est par là qu'ils déposent leurs oeufs !..
DON'T FEED THE TROLL! Ne l'oubliez jamais !



Pages: [1]   En bas

Auteur Sujet: Dart - Débogage avec l'observatoire (débogage d'application Dart non transpilée)  (Lu 258 fois)

Songbird

  • Invité

 :gp:

Comment déboguer une application Dart ?

Pour la chasse aux bugs, l'Observatoire sera votre meilleur allié.
Il permet de suivre étape par étape l'exécution de votre programme grâce à la mise en place de breakpoints, mais vous pourrez également tester vos classes en live en accédant à la hiérarchie des classes de votre projet.
Vous disposerez aussi de rapports plus ou moins détaillés des performances de votre programme, de sa consommation mémoire, processeur, des effets du garbage collector de la mémoire utilisée, et la taille de chaque génération. (old and young generation)

Pour visionner rapidement le résultat, créez un programme dart (disposant d'une fonction main), puis entrez la commande suivante dans votre shell:
Code
dart --observe yourDartProgram.dart

Vous obtiendrez alors un message de ce type:
Citation
vm-service: isolate 'Nox.dart$main' has no debugger attached and is paused at start.  Connect to Observatory at http://127.0.0.1:8181 to debug.
Il vous invite donc à renseigner l'adresse http://127.0.0.1:8181 dans votre navigateur pour accéder à l'interface de l'Observatoire ainsi qu'aux outils qui le composent.
Pour le message précédé par "vm-service", aucun problème. Il vous informe juste que vous n'avez appelé aucun débogueur dans votre code, ce qui vous empêche donc de visionner le comportement de votre méthode main.
Pour y remédier, il vous suffit d'entrer le flag --pause-isolates-on-start avec votre commande:
Code
dart --observe --pause-isolates-on-start Nox.dart 
Le débogueur s'arrêtera alors avant l'appel de la fonction main, vous permettant de vous tenir au courant de ce qu'il se passe là-dedans.

Lorsque vous êtes connectés, vous vous retrouverez dans ce chemin: http://127.0.0.1:8181/#/vm.
A côté du graphique en camembert, vous apercevrez une liste de liens et vous rendrez donc sur See debugger, et c'est ici que vous pourrez passer des instructions au débogueur pour visionner l'exécution de votre programme, voici un exemple:


Les breakpoints s'exécute en direct devant vos yeux, permettant ainsi une résolution des bugs plus rapides.
(pour passer les breakpoints, il suffit de taper "c" pour passer au suivant)

Documentation de l'Observatoire. (anglaise)
IP archivée

alex

  • Administrateur
  • Dictionnaire ambulant
  • ********
  • Hors ligne Hors ligne
  • Sexe: Homme
  • Messages: 14.855
  • Proprio officiel chez oim !

J'imagine que c'est le debugger qui place les breakpoints.
On peut en ajouter ou en retirer ?
IP archivée

Songe

  • Observateur
  • Pipelette intarissable
  • ********
  • Hors ligne Hors ligne
  • Messages: 5.109
  • Chérie officielle chez oim !

Çà veux dire quoi transpillée ?  :iz:
IP archivée
A chaque chose malheur est bon, Demain ne meurt jamais... parce qu'il n'existe pas !

alex

  • Administrateur
  • Dictionnaire ambulant
  • ********
  • Hors ligne Hors ligne
  • Sexe: Homme
  • Messages: 14.855
  • Proprio officiel chez oim !

Transpiler, c'est passer d'un langage à un autre.
Enfin, c'est plutôt une conversion d'un langage vers un autre. Un programme en langage X sera transpilé en un langage Y.

Par exemple, dans ce topic on parle du langage Dart.
Dart n'est pas utilisable directement par ton navigateur. On va donc le transpiler en langage JavaScript que ton navigateur connait très bien.

C'est presque pareil que "compiler" sauf que la compilation transpile toujours un langage X en langage machine (ou pseudo langage machine).

C'est bon ? T'as compris ? :gf:
IP archivée

Songbird

  • Invité

Citation
J'imagine que c'est le debugger qui place les breakpoints.
On peut en ajouter ou en retirer ?
Oui bien sûr ! :)
Quand tu tapes la commande h, tu as toutes les commandes supportées par le débogueur.
IP archivée

alex

  • Administrateur
  • Dictionnaire ambulant
  • ********
  • Hors ligne Hors ligne
  • Sexe: Homme
  • Messages: 14.855
  • Proprio officiel chez oim !

Ah bon, c'est bien ce qu'il me semblait aussi. :)
IP archivée

Songe

  • Observateur
  • Pipelette intarissable
  • ********
  • Hors ligne Hors ligne
  • Messages: 5.109
  • Chérie officielle chez oim !

J'ai comprit le principe même si demain j'aurai probablement oublier . :gf:
IP archivée
A chaque chose malheur est bon, Demain ne meurt jamais... parce qu'il n'existe pas !

alex

  • Administrateur
  • Dictionnaire ambulant
  • ********
  • Hors ligne Hors ligne
  • Sexe: Homme
  • Messages: 14.855
  • Proprio officiel chez oim !

Tu repasseras ici pour relire. ;)

Sinon, au pire, tu redemandes. :iq:
IP archivée
Pages: [1]   En haut
 

+ Réponse Rapide

Page générée en 0.127 secondes avec 22 requêtes.