Vidéo: Différence entre un interpréteur et un compilateur ? 2024
Si vous êtes un vétéran chevronné des ordinateurs et de l'informatique, vous pouvez essayer d'installer le logiciel requis pour créer des programmes Java. Vous aurez besoin des trois choses listées ci-dessous pour commencer
"Un compilateur prend le code Java que vous écrivez et transforme ce code en quelque chose qui peut fonctionner sur votre ordinateur. "
Barry Burd, Java For Dummies, 6e édition
Alors, de combien d'outils avez-vous besoin pour créer des programmes Java? En tant que novice, vous avez besoin de trois outils:
-
Un compilateur prend le code Java que vous écrivez et transforme ce code en quelque chose qui peut fonctionner sur votre ordinateur.
-
Une machine virtuelle Java exécute votre code (et le code Java d'autres personnes) sur votre ordinateur.
-
Un environnement de développement intégré vous aide à gérer votre code Java et fournit des moyens pratiques d'écrire, de compiler et d'exécuter votre code.
// Cela fait partie d'un programme Java // (pas un programme Java complet). roomNum = 1; while (roomNum <100) {if (invités [numChambre] == 0) {out. println ("Room" + roomNum + "est disponible."); exit (0); else {roomNum ++;}} out. println ("Aucun poste vacant");
Le code Java ici vérifie les postes vacants dans un petit hôtel (un hôtel avec les numéros de salle 1 à 99). Vous ne pouvez pas exécuter le code sans ajouter plusieurs lignes supplémentaires. Mais ces lignes supplémentaires ne sont pas importantes. Ce qui est important est que, en regardant le code, en plissant les yeux un peu et en regardant au-delà de l'étrange ponctuation du code, vous pouvez voir ce que le code essaie de faire:
Définissez le numéro de pièce sur 1. Tant que le numéro de pièce est inférieur à 100, vérifiez le nombre d'invités dans la pièce. Si le nombre d'invités dans la pièce est 0, signalez que la pièce est disponible et arrêtez. Sinon, préparez-vous à vérifier la pièce suivante en ajoutant 1 au numéro de chambre. Si vous arrivez au numéro de chambre inexistant 100, signalez qu'il n'y a pas d'offres d'emploi.
Si vous ne voyez pas les similitudes entre le code et son équivalent anglais, ne vous inquiétez pas, comme la plupart des êtres humains, vous pouvez apprendre à lire et écrire le code. C'est ce qu'on appelle le code source Java .
Voici donc le piège: les ordinateurs ne sont pas des êtres humains. Ordinateurs ne suivent normalement pas les instructions comme les instructions dans la liste. Autrement dit, les ordinateurs ne suivent pas les instructions de code source Java. Au lieu de cela, les ordinateurs suivent des instructions cryptiques comme celles de la liste.
aload_0 iconst_1 putfield Hôtel / chambreNum I goto 32 aload_0 getfield Hôtel / invités [I aload_0 getfield Hôtel / chambreNum I iaload ifne 26 getstatic java / lang / Système / out Ljava / io / PrintStream; new java / lang / StringBuilder dup ldc "Room" invokespecial java / lang / StringBuilder / (Ljava / lang / String;) V aload_0 getfield Hôtel / roomNum I invokevirtual java / lang / StringBuilder / append (I) Ljava / lang / StringBuilder; ldc "est disponible."java / lang / StringBuilder invokevirtual / (Ljava / lang / String;) Ljava / lang / StringBuilder; invokevirtual java / lang / StringBuilder / toString () Ljava / lang / String; invokevirtual java / io / PrintStream / println (Ljava / lang / String;) V iconst_0 invokestatic java / lang / Système / sortie (I) V goto 32 aload_0 dup getfield Hôtel / chambreNum I iconst_1 iadd putfield Hôtel / chambreNum I aload_0 getfield Hôtel / chambreNum I bipush 100 if_icmplt 5 getstatic java / lang / System / out Ljava / io / PrintStream; ldc "Aucune lacune" invokevirtual java / io / PrintStream / println (Ljava / lang / String;) V return
Les instructions de cette liste ne sont pas des instructions de code source Java. re instructions Java bytecode Lorsque vous écrivez un programme Java, vous écrivez des instructions de code source (comme les instructions listées en premier) Après avoir écrit le code source, vous exécutez un programme (c'est-à-dire que vous appliquez un outil)
Le programme est un compilateur . Le compilateur traduit vos instructions de code source en instructions de bytecode Java. En d'autres termes, le compilateur prend du code que vous pouvez écrire et comprendre et le traduit en code qu'un ordinateur peut exécuter (comme le code ici).
Vous pourriez placer votre code source dans un fichier nommé Hotel. Java. Si c'est le cas, le compilateur place probablement le bytecode Java dans un autre fichier nommé Hotel. classe. Normalement, vous ne prenez pas la peine de regarder le bytecode de l'hôtel. fichier de classe. En fait, le compilateur n'encode pas l'Hôtel. fichier de classe en tant que texte ordinaire, de sorte que vous ne pouvez pas examiner le bytecode avec un éditeur ordinaire.
Si vous essayez d'ouvrir l'hôtel. classe avec Notepad, TextEdit, KWrite, ou même Microsoft Word, vous ne verrez que des points, des gribouillis, et autres gobbledygook. Pour créer une liste, vous devez appliquer un autre outil à votre Hôtel. fichier de classe. Cet outil affiche une version textuelle d'un fichier bytecode Java. Vous pouvez utiliser Java Bytecode Editor d'Ando Saabas.
Personne (excepté quelques développeurs fous dans des laboratoires isolés dans des endroits lointains) n'écrit de bytecode Java. Vous exécutez un logiciel (un compilateur) pour créer le bytecode Java. La seule raison de regarder cette liste est de comprendre ce qu'est un travailleur acharné de votre ordinateur.