Ce cours a pour objectif d’enseigner les principes de la programmation orientée-objet (encapsulation, héritage et polymorphisme) en insistant sur des notions de programmation plus approfondies que les types primitifs (int, char, …), les structures de contrôle et les structures de données de base tels que les tableaux.
De façon plus spécifique, ce cours devra permettre à l'étudiant d’ :
- Utiliser un environnement de programmation Java (BlueJ, Eclipse, JCreator ou autres).
- Apprendre à programmer dans le paradigme orienté-objet avec le langage Java.
- Comprendre les relations d’héritage, d’agrégation et de composition.
- Comprendre et exploiter l’utilité de la visibilité des attributs et des méthodes (encapsulation).
- Comprendre et pouvoir exploiter le polymorphisme.
- Être en mesure de programmer (et d’utiliser) des types de données abstraits (piles, files et listes) avec différentes implémentations.
- Utiliser les composants Swing pour la création d’interface graphique.
L’étudiant doit au préalable avoir une compréhension des concepts suivants[1] :
- Types de base (Entier, réel, booléen, caractère).
- Opérateurs sur les types de base (+, -, *, /, %, …).
- Types composés (chaînes de caractères et tableaux).
- Structures de contrôle (sélection, itération).
- Structures de programme (bloc principal, procédures et fonctions).
- Passage de paramètres (par valeur, par référence, formel et actuel).
- Entrées (clavier) et sorties (écran).
[1] Peu importe le langage de programmation qui a été utilisé.