• 6 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 14/03/2022

Installez votre environnement de débug

Qu’est-ce qu’un débugger ?

Avez-vous déjà rencontré un bug étrange qui vous a laissé perplexe ? Si seulement vous aviez pu reproduire la scène du crime. Peut-être une machine à remonter le temps (à la Doctor Who ! :-D)  qui vous emmène dans votre ordinateur juste avant l’apparition du bug ? Imaginez si vous aviez été capable de voir tout ce que faisait votre code et de le regarder échouer au ralenti.

Bonne nouvelle ! Un outil qui a exactement ce pouvoir existe (mais ce n’est pas une cabine téléphonique anglaise, malheureusement). Il peut voyager dans le temps et vous aider à examiner pourquoi votre logiciel échoue. Cela s’appelle un débugger

Où est-ce que je peux obtenir un débugger ? Et comment fonctionne-t-il ?

Si vous avez une installation Java ou un IDE, vous avez déjà un débugger ! Les différents IDE de Java comprennent d’excellentes interfaces de débug.

Elles vous permettent d’exécuter vos programmes comme vous le feriez normalement, mais avec une différence importante : vous pouvez mettre le programme en pause et regarder dans la JVM pour inspecter les variables qui s’y trouvent. La JVM exécute le bytecode compilé depuis votre logiciel. Elle est responsable du contrôle de l’exécution et de la surveillance des variables et objets de votre code. Les débuggers permettent aux développeurs de se connecter à la JVM et de lui dire quoi faire ensuite. Vous pouvez vérifier quelles variables sont mises en place et examiner les méthodes appelées pour parvenir à un point précis. Vous pouvez même intervenir dans le comportement du programme pour essayer des choses ! Cela peut être utile lorsque vous essayez de comprendre pourquoi votre logiciel échoue et lorsque vous traquez un bug dans votre code. C’est pourquoi cela s’appelle un debugger. 😉

Un débugger vous fournit une télécommande bien utile pour votre JVM. Dans le cadre du haut du diagramme ci-dessous, vous pouvez voir comment il vous permet de contrôler votre JVM et d’inspecter ce qu’elle fait. Pendant le reste du cours, vous allez vous familiariser avec ces commandes et les maîtriser !

En utilisant JPDA, votre debugger peut contrôler votre JVM à distance.
Diagramme JPDA simplifié

La JPDA inclut le JDWP (Java Debugger Wire Protocol, ou protocole de communication du débugger Java), qui définit comment les débuggers communiquent avec les JVM. Le JDWP fonctionne par un réseau, même si vous êtes juste en train de débugger quelque chose sur votre machine locale. Par conséquent, le débug d’une application sur une JVM de l’autre côté de la planète est tout à fait identique à la même action effectuée localement. 

Je ne peux pas exécuter mon programme et afficher les variables ?

Vous pouvez, bien sûr. Mais si vous l’avez déjà fait, vous savez que c’est un cycle lent, et vous ne verrez que les valeurs que vous choisissez d’afficher. Cela correspond à recréer une scène de crime, mais en incluant uniquement les suspects dont vous avez deviné la présence. Vous pourriez rater quelqu’un et ne jamais le savoir ! Néanmoins, si vous pouviez revenir à ce moment-là du passé, toutes les preuves seraient devant vous, y compris les variables visibles par le périmètre de votre code à cet instant-là. 🔍

Installez IntelliJ Community Edition

Je vais utiliser la version Community Edition d’IntelliJ (gratuite) pour vous montrer comment vous pouvez débugger en Java. IntelliJ est un environnement de développement puissant et extrêmement courant en Java. Vous pouvez suivre avec votre IDE favori, mais l’UI pourrait avoir un aspect différent et utiliser des noms légèrement différents. Installons-le !

  1. Cliquez sur le lien pour accéder au site JetBrains où vous pouvez télécharger IntelliJ.

  2. Cliquez sur le bouton Download (télécharger) sous IntelliJ IDEA Community Edition.

  3. Une fois téléchargé, exécutez l’installateur.

  4. Cliquez sur Next (suivant) à chaque page, en sélectionnant tous les défauts.

  5. Une fois l’installation terminée, lancez IntelliJ IDEA Community Edition.

  6. Félicitations, vous avez maintenant l’IDE IntelliJ et son débugger intégré !

En résumé

  • Vous pouvez utiliser un débugger pour contrôler l’exécution d’un programme et inspecter les variables utilisées pendant l’exécution du programme. Cela peut être utile lors de la reconstitution de la scène de crime d’un bug logiciel. 

  • La version Community Edition d’IntelliJ inclut un débugger que nous utiliserons dans ce cours.

Vous avez terminé la première partie de ce cours, qui vous a permis d'explorer la méthodologie du débug. Maintenant, c'est à vous de jouer : évaluez vos connaissances avec un quiz !

Exemple de certificat de réussite
Exemple de certificat de réussite