Philippe Gandy - 1 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc
Présentation et lecture du plan de cours Introduction sur Java Installation d’Eclipse et création de workspace Conventions d’écriture Les variables Démo de sortie à la console et d’entrer de valeurs
Programmer, c’est comme écrire une suite de nombre binaire. Écrire des suites de chiffres comme cela est excessivement difficile. Les relire et les corriger est virtuellement impossible. En plus, la séquence de chiffres requise pour faire la même opération sur deux ordinateurs différents (PC, Mac, station) n’est pas la même. C’est pourquoi on a dû inventer des langages de haut niveau, que l’on compile, c’est-à- dire que l’on transforme en langage machine.
Les débuts de Java remontent à avril Le premier compilateur Java fût écrit en langage C. Arthur Van Hoff implanta le compilateur Java en Java lui-même à la fin 1994.
Architecture Le code Java n'est conçu pour aucune plate-forme spécifique. Le code intermédiaire qui doit être traduit en code natif machine par un programme particulier. Le code intermédiaire ou bytecode est conçu pour une Machine Virtuelle Java MVJ (Java Virtual Machine JVM).
Machine Virtuelle Java Est un appareil informatique fictif qui exécute des programmes compilés sous forme de bytecode Java. La machine virtuelle est l'équivalent d'un ordinateur virtuel résidant entièrement en mémoire. Cette machine virtuelle doit être implantée sur chaque plate-forme.
Cycle de développement d'applications en Java 1. Le programmeur rédige un fichier source en utilisant un éditeur texte. Ce fichier doit avoir une extension java. Par exemple Exemple1.java. 2. Le fichier source est compilé en utilisant un exécutable ( javac.exe sous Windows ) appelé compilateur Java. Ce fichier a une extension class et a un format interne appelé bytecode. Ne doit pas avoir d’erreurs pour être créé.
Cycle de développement d'applications en Java 3. Le fichier bytecode est maintenant soumis à l'interpréteur (Machine Virtuelle Java : java.exe sous Windows) qui convertira les instructions en code machine natif.
Robustesse Java se veut robuste dans la mesure où le langage, fortement typé, permet moins de faux pas que le langage C, par exemple. Des bugs classiques, comme le dépassement de tableau, sont impossibles. La gestion de la mémoire, sa libération automatique via un ramasse-miettes (garbage collector) sont les garants d'une meilleure stabilité des applications.
Orienté objet Même s'il s'inspire de la syntaxe du C++, Java a été réécrit à partir de zéro, de manière à être totalement orienté objet. Java est un langage plus purement orienté objet que le C++, qui conserve de nombreux aspects de programmation procédurale puisqu'il n'est lui- même qu'une extension du langage C.
1. Installer le JDK 7 de vase/downloads/jdk7-downloads html vase/downloads/jdk7-downloads html 2. Installer Eclipse 32 bits
Ouvrir Eclipse et créer ou sélectionner un workspace (sur une clé/disque USB sinon vous risquer de perdre votre travail)
Répertoire d’un projet en Eclipse
Structure générale du code Chaque fichier doit être muni d'un en-tête comprenant le nom du programmeur, le nom du fichier, une courte description de la fonction du code et la date.
Structure générale du code Les caractères /* et */ peuvent être utilisés comme en C pour des commentaires s'étalant sur plusieurs lignes. Les caractères // sont utilisés en début de ligne pour signifier que le reste de la ligne est un commentaire.
Structure générale du code En Java, on convient en général d'ouvrir un bloc avec l'accolade gauche ( { ) sur la même ligne que ce qui précède le bloc, de mettre en retrait d'une tabulation (idéalement de 4 caractères) le contenu du bloc (incluant les commentaires) et de fermer le bloc avec l'accolade droite ( } ) en retirant la mise en retrait pour ce caractère.
Structure générale du code
Nomenclature des identificateurs Les noms de classes: Ils commencent par une majuscule et peuvent être formés par la concaténation de plusieurs mots. La première lettre de chaque mot est majuscule et toutes les autres sont minuscules. (ex: Graphics,VolCommercial, IOException, etc.)
Nomenclature des identificateurs Les noms de méthodes (fonctions) et de variables: Même chose que pour les noms de classes sauf que la première lettre doit être minuscule. (ex: getGraphics, calculerLaMoyenne, moyenne, etc.)
Nomenclature des identificateurs Les noms de variables constantes: Toutes les lettres sont majuscules et les mots, s'il y en a plus d'un, sont séparés par des caractères de soulignement. (ex: PI, E, NOMBRE_MAX, etc.)
Lorsque vient le temps de choisir un identificateur, que ce soit le nom d'une classe, d'une variable ou celui d'une méthode, il est important de ne pas choisir un mot qui soit un mot clé ou un mot réservé du langage (voir diapo suivante).
Par convention, un nom de variable est écrit en minuscules, sans accent, ni _ ou $. En revanche lorsqu'il est composé de plusieurs mots, on peut utiliser une majuscule pour l'initiale de chaque nouveau mot. Nom de variable correctNom de variable incorrectRaison nomDeVariableNom de Variablecomporte des espaces nomDeVariable123123NomDeVariablecommence par un chiffre - et. continuercontinuenom réservé
Dans un programme qui contiendrait des variables nommées c, i, l et f, où c est de type char (1 octet), i de type int (2 octets), f de type float (4 octets) et enfin l de type double (8 octets), on peut se représenter ces données en mémoire de la façon suivante:
C'est toujours le compilateur et non le programmeur qui détermine l'emplacement d'une variable en mémoire. Dans le cas de variable occupant plus d'un octet, l'adresse de la variable débute par le nombre de la cellule le moins élévé. Ainsi, pour la variable i, il est vraisemblable de dire que son adresse est 800.
Démo de sortie à la console et d’entrer de valeurs FIN