Programmation Java Notes de cours Stéphane Airiau L3 Informatique – MIDO Année
Programmation Java Notes de cours Stéphane Airiau L3 Informatique – MIDO Année 2017–2018 Introduction JAVA est un langage informatique : c’est un langage pour parler à une machine. Pour pouvoir écrire dans ce langage, il faut donc apprendre son vocabulaire et sa grammaire afin de pouvoir communiquer avec la machine. Ce cours de mise à niveau ne suppose aucune connaissance particulière de JAVA . L’objectif du cours est de voir une grande partie des fonctionalités de ce langage. Le cours se déroule sur 15h avec une partie de cours et une partie de travaux dirigés. Ce temps n’est pas suffisant pour maîtriser toutes les subtilités du langage, mais il est suffisant pour pouvoir réaliser des projets qui peuvent déjà se montrer relativement complexes. Pour ce cours, on fera l’hypothèse que des notions algorithmiques de base sont acquises. Ainsi, on ne va pas s’intéresser à l’implémentation d’algorithmes pour résoudre des problèmes particuliers et évaluer leurs performances d’un point de vue théorique (déterminer le nombre d’opérations pour mener à bien un calcul, ou bien évaluer les demandes en mémoire, etc). Ainsi, on ne s’intéressera pas à des exemples classiques comme le problème de tri d’un ensemble fini ou le calcul du chemin minimum entre deux noeuds d’un graphe. Le but du cours est de connaître les fonctionalités du langage. Par exemple, si on possède une implémentation d’un algorithme qui tri des nombres entiers, comment est-il possible de modifier ce code (et a-t-on besoin de modifier ce code) pour trier des étudiants selon leur moyenne ou selon leur pointure de chaussures. Lorsqu’on implémente un projet dans un langage, il faut non seulement continuer à avoir ces exi- gences algorithmiques, mais il faut aussi penser à d’autres aspects, par exemple — lisibilité : il faut toujours avoir en tête que chaque ligne de code écrite sera lu par quelqu’un d’autre : par un autre programmeur qui travaille sur le même projet, par quelqu’un qui va amé- liorer le projet, ou bien par vous-même quelques semaines après avoir écrit le code. Il faut donc écrire du code qui soit compréhensible par un lecteur : il faut penser à commenter, c’est à dire laisser un texte qui donne une intuition, une justification, des explications sur les lignes de codes qui suivent. Le choix du nom des variables participe également à la lisibilité du code. — ré-utilisation/abstraction : même si chaque projet à un but précis, des parties du code, ou le pro- jet lui-même peuvent être utilisés à d’autres fins. On peut donc ré-utiliser des parties de code et ne pas ré-inventer la roue à chaque projet. Par exemple, on implémente un code pour trier des entiers. Si on a besoin de trier des nombres réels, faut-il vraiment faire une autre implémenta- tion ? L’algorithme ayant simplement besoin d’un outil pour comparer deux éléments, on devrait pouvoir utiliser le même algorithme et seulement changer l’outil pour effectuer la comparaison. Si on veut écrire le classement des participants du tour de France, on devrait toujours pouvoir utiliser le même algorithme en précisant que l’outil pour comparer est la comparaison entre les temps totaux. Ceci est particulièrement vrai pour la programmation orientée objet : on peut avoir en tête la question : est-ce que je peux écrire quelque chose de plus général, de plus abstrait ? — laisser des possibilités/prévoir l’évolution du code dans le futur : autre exemple, on a besoin de programmer un serveur qui communique avec un client. On peut choisir une solution qui fait i exactement cela. On peut aussi penser qu’un jour on voudra communiquer avec plusieurs clients à la fois, et on peut donc choisir une solution qui permettra de faire ce changement facilement (avec de simples modifications). De même que lorsque l’on résout des problèmes algorithmiques avec un papier et un crayon, un projet programmé dans un langage orienté objet se prépare aussi avec un papier et un crayon : différentes solutions sont possibles et le choix final fera sûrement des compromis entre performances, ré-utilisation du code et possibilités pour faire évoluer le code dans le futur. Le langage JAVA vous donne beaucoup d’outils, ce qui offre autant de choix pour construire un projet. Ce cours a pour but de passer en revue une bonne partie de ces outils en évoquant leurs possibles utilisations. Table des matières 1 Eléments de base 1 1 Ecrire du JAVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Où écrire ? Extension .java . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Instructions et commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.3 Un premier programme et affichage dans la console . . . . . . . . . . . . . . . . 2 2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1 Nom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2 Déclaration d’une variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.3 Types élémentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.4 Exemples d’affectation avec valeurs . . . . . . . . . . . . . . . . . . . . . . . . 5 2.5 Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3 Opérations arithmétiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.1 Type d’une expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4 Décision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.1 Branchements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.2 Itérations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4.3 Visibilité d’une variable dans un bloc . . . . . . . . . . . . . . . . . . . . . . . 12 5 Méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.1 Déclaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.2 une méthode particulière : la méthode main . . . . . . . . . . . . . . . . . . . . 15 6 Une structure de données : déclarer et utiliser des tableaux . . . . . . . . . . . . . . . . 16 2 Compilation, exécution, machine virtuelle 19 1 Compilation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . uploads/S4/ programmation-java-notes-de-cours.pdf
Documents similaires










-
48
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mar 28, 2022
- Catégorie Law / Droit
- Langue French
- Taille du fichier 0.4947MB