CS-108 / coefficient 9

Enseignant: Schinz Michel

Langue: Français


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

    Dans les plans d'études

    • Semestre: Printemps
    • Forme de l'examen: Pendant le semestre (session d'été)
    • Matière examinée: Pratique de la programmation orientée-objet
    • Cours: 2 Heure(s) hebdo x 14 semaines
    • Exercices: 2 Heure(s) hebdo x 14 semaines
    • Projet: 6 Heure(s) hebdo x 14 semaines
    • Type: obligatoire
    • Semestre: Printemps
    • Forme de l'examen: Pendant le semestre (session d'été)
    • Matière examinée: Pratique de la programmation orientée-objet
    • Cours: 2 Heure(s) hebdo x 14 semaines
    • Exercices: 2 Heure(s) hebdo x 14 semaines
    • Projet: 6 Heure(s) hebdo x 14 semaines
    • Type: obligatoire

    Semaine de référence

    Mardi, 8h - 10h: Projet, labo, autre INF2
    INF1
    INF3

    Mardi, 10h - 12h: Cours RLC E1 240

    Vendredi, 10h - 12h: Exercice, TP INF2
    INF3
    INF119
    INF213

    Vendredi, 13h - 17h: Projet, labo, autre INF2
    INF3
    INM200
    INF213

    Cours connexes

    Résultats de graphsearch.epfl.ch.