Ce cours fait partie du cursus PISE.
But
Initier à la programmation orientée objet en Java. Cet enseignement va de pair avec le cours UML du même cursus.
Les cours
Le cours était anciennement assuré (il y a longtemps) par M. Pierre Charbit qui avait rédigé (il y a longtemps) un support. Je l’ai partiellement remanié il est disponible ici :
Le support de cours initié par Pierre Charbit et remanié par mes soins.
Année 2021—2022
- Les éléments de base de la programmation Java, main, types, méthodes statiques. Le code du cours. Le premier TP.
- Les éléments de base de la programmation objet : références, objets, type d’objets, méthodes, constructeurs. Le second TP. Une solution «équivalente» : TP2.zip.
- Les statics. Le code du cours. Le troisième TP.
- Une correction partielle du TP n°3. Le quatrième TP.
- L’interrogation n°1.
- Sous-classes, Classes abstraites, Interfaces. Exemples du cours: src5.zip, src6.zip. Le cinquième TP, le sixième TP: une possible correction src7.zip.
- Connexion aux bases de données src8.zip.
- Les interfaces graphiques, l’exemple du cours.
- L’interrogation n°2.
Les capsules vidéo
Année 2020—2021
En plus des cours assurés en hybride (présentiel et distanciel), il est conseillé de visionner les capsules vidéos (juste en dessous) fabriquées l’an dernier lors du confinement et qui sont suggérées pour chaque intervention.
- Les types de base en Java (vidéo n°1, le code fait en cours).
- Le monde des objets (vidéos n°4, 5, 6, 7, le code du cours)
- lecture recommandée du chapitre 6 du support de cours «classes et objets».
- lecture recommandée de l’extrait en langue anglaise du livre «Data Structures and Software Development in an Object Oriented Domain: Java Edition», J.-P. Tremblay & G. Cheston, cover, page 57, page 58, page 59, page 60, page 61, page 62, page 63, page 64, page 65.
- lecture recommandée de l’extrait en langue anglaise du livre «A Theory of Objects», M. Abadi & L. Cardelli, cover, page 7, page 8, page 9, page 10.
- lecture recommandée de l’extrait en langue française du livre «Eiffel, le langage» B. Meyer, couverture, page 5, page 6, page 7, page 8.
- lecture recommandée de l’extrait en langue anglaise du livre «Concepts in Programming Languages», J. Michell, cover, page 277, page 278, page 279.
- lecture recommandée de l’extrait en langue anglaise du livre «Object Oriented Modeling and Design», J. Rumbaugh & M. Blaha & W. Premerlani & F. Eddy & W. Lorensen, cover, page 1, page 2, page 3.
- L’exemple du cours (Compte en Banque).
- les exercices d’application.
- Les getters, setters, packages et attributs/méthodes de classe (le code du cours de la classe Nombre)
- Entrées/Sorties
- les exercices.
- Polymorphisme. L’exemple du cours avec les animaux.
- les exercices.
- Base de données et interfaces Graphiques : l’exemple des bases de données et celui des interfaces.
- le tp.
- le tp.
Année 2019—2020
Compte tenu des mesures de confinement du mois de mars et prises à la suite de l’épidémie de Covid-19, les cours n’auront pas lieu physiquement. Des documents et matériaux pédagogiques seront rendus disponibles autant que possible et des travaux seront à rendre afin d’assurer un suivi pédagogique minimal. Restez donc à l’écoute et surveillez régulièrement l’évolution de cette page…
- Java de base (types primitifs et structure de contrôle, type String, tableaux), (vidéo n°1)
- Les objets, (vidéos n°4, 5, 6, 7, 8, 9, 10, 11, 12)
- Les packages, statics, les exceptions (vidéos n°13, 14, 15, 16)
- Les entrées/sorties de texte sur fichiers (et les exceptions) , (vidéo n°17)
- L’extension de classe et le polymorphisme par sous-typage, (vidéos n°18, 19, 20, 21, 22)
- La factorisation de code et la généralisation conceptuelle, des classes aux classes abstraites et aux interfaces, (vidéos n°23, 24 et 25)
- Les interfaces usuelles,
Comparable<T>
,Comparator<T>
etSerializable
(vidéos n°26 et 27) - L’interface avec les bases de données, les vidéos n°28 et 29
- L’interface graphique, les vidéos n°30, 31, 32, 33, 34 et 35.