IST Syllabus L2 Programme UE Programmation orientée objet et Java

Semestre 3

UE Programmation Orientée Objet et Java

19,5h CM – 30h TD

Prérequis de L1
Modules Mathématiques : Algèbre linéaire 1, Analyse 1, Algèbre linéaire 2, Analyse 2
Modules Informatique : Informatique 1, Informatique 2

Prérequis pédagogiques de L1
Connaître au moins un langage de programmation procédural (python, C, ...) ou éventuellement objet (Java, C#, ..)
Posséder des notions de base d’algorithmique.
Cette UE est étroitement liée L’UE "La boite à outils du programmeur" de la mineure m3-I pour les étudiants qui ont choisi les majeures d'informatique.

Compétences visées
Être capable d’appréhender un problème informatique en s’appuyant sur une approche objet pour le résoudre. Modéliser la solution grâce à un diagramme de classes (statique) en utilisant UML (Unified Modeling Language) pour les schémas.
À l'issue de ce module, l'étudiant doit être capable de réaliser une petite application écrite en Java.

Disciplinaires
Modélisation objet
UML : diagrammes de classes
Programmation Orientée Objet et Langage Java

Transversales (« Soft-skills »)
Rechercher des solutions de manière autonome
Gérer un projet (organisation, planning, répartition des tâches, respect des consignes)
Travailler en binôme
Rédiger un rapport en français
Présenter des résultats (soutenance orale et démonstration de projet)

Conditions de validation
Selon les MCC

Contenu du cours

Concepts objet fondamentaux : classes, objets, instance, abstraction, encapsulation et niveaux de visibilité, attributs, méthodes, paquetages, mutualisation de code

Types de bases (types primitifs) et types structurés

Composante statique : attributs (données membres, caractéristiques communes) / composants dynamiques : méthodes (fonctions membres, comportements)

Composante dynamique : méthodes usuelles (constructeurs, accesseurs (getter), mutateurs (setter), toString) et méthodes fonctionnelles

La relation d'héritage

Modélisation statique : modularité, ré-utilisabilité

Diagrammes de classes UML

Sur-définition et redéfinition de méthode

Généricité et polymorphisme dynamique

Tableaux, collections et dictionnaires

Classes abstraites et interfaces

Autres relations entre classes : implémentation d’interface, association, composition, agrégation

Les exceptions

Compléments utiles : constantes, méthodes statiques, classes enveloppes, javadoc, fichier jar.

Les autres éléments complémentaires, fichiers, interfaces graphiques (GUI / IHM), sont abordés durant le même semestre dans la demi-mineure « la boîte à outils du programmeur »