Practice of object-oriented programming
Résumé
Les étudiants perfectionnent leurs connaissances en Java et les mettent en pratique en réalisant un projet de taille conséquente. Ils apprennent à utiliser et à mettre en œuvre les principaux types de collections (listes, ensembles, tables associatives), et examinent quelques patrons de conception.
Contenu
Approfondissement des connaissances du langage Java, en particulier de la généricité (polymorphisme paramétrique), des classes imbriquées et anonymes et des lambdas.
Introduction à différents aspects de la bibliothèque standard Java : collections, entrées-sorties, interfaces utilisateur graphiques, etc.
Etude des mises en œuvre des collections par chaînage, arbres binaires de recherche ou hachage.
Introduction aux patrons de conception (design patterns) et examen des plus importants (Decorator, Composite, Builder, etc.).
Examen de l'utilisation judicieuse de l'héritage et de l'immuabilité.
Réalisation d'un projet de programmation conséquent en Java.
Mots-clés
Java, programmation orientée-objets, collections, patrons de conception.
Compétences requises
Cours prérequis obligatoires
CS-107 Introduction à la programmation.
Acquis de formation
A la fin de ce cours l'étudiant doit être capable de:
- Concevoir et écrire des programmes Java de taille moyenne.
- Utiliser à bon escient la totalité des concepts de Java.
- Utiliser et concevoir des classes et méthodes génériques en Java.
- Utiliser et mettre en oeuvre les principales sortes de collection (listes, ensembles, tables associatives).
- Utiliser judicieusement l'héritage et l'immuabilité dans les langages orienté-objets.
- Reconnaitre et savoir utiliser plusieurs patrons de conception.
Compétences transversales
- Utiliser les outils informatiques courants ainsi que ceux spécifiques à leur discipline.
Méthode d'enseignement
Ex-cathedra.
Travail attendu
Participation au cours, réalisation des exercices, réalisation du projet.
Méthode d'évaluation
Durant le semestre : projet (60%), examen intermédiaire (15%) et examen final (25%).
Encadrement
Office hours | Non |
Assistants | Oui |
Forum électronique | Oui |
Ressources
Service de cours virtuels (VDI)
Oui
Ressources en bibliothèque
Sites web
In the programs
- Semester: Spring
- Exam form: During the semester (summer session)
- Subject examined: Practice of object-oriented programming
- Courses: 2 Hour(s) per week x 14 weeks
- Exercises: 2 Hour(s) per week x 14 weeks
- Project: 6 Hour(s) per week x 14 weeks
- Type: mandatory
- Semester: Spring
- Exam form: During the semester (summer session)
- Subject examined: Practice of object-oriented programming
- Courses: 2 Hour(s) per week x 14 weeks
- Exercises: 2 Hour(s) per week x 14 weeks
- Project: 6 Hour(s) per week x 14 weeks
- Type: mandatory