Vous êtes ici : FIL > Portail > Licence Info > L2S4 > POO

Programmation Orientée Objet

Responsable

Jean-Christophe Routier

Volume horaire

Cette unité se déroule au S4 de la licence mention Informatique. Il s'agit d'une UE obligatoire de cette mention.
L'enseignement est organisé sous la forme d'une séance de cours, d'une séance de TD et une séance de TP hebdomadaire, chacune durant 1h30.
Cette UE constitue un pré-requis indispensable au suivi de l'UE COO du S5.

Crédits

5 ECTS
Jean-Christophe Routier
dernière modification : 13/09/2017 à 14:08:12

Objectifs

Introduire les concepts de base de la la programmation objet et la « pensée objet ». Les notions de classes, objets/instances, envoi de messages doivent être assimilées, ainsi que la décomposition d'un problème en ces termes. A l'issue de ce module l'étudiant doit avoir conscience de l'importance et de l'application des notions de polymorphisme et d'abstraction de la représentation du problème.
Le langage support est le langage Java.

Compétences

A l'issue de ce module les étudiants devraient...
  • ... utiliser à bon escient les éléments de base de la programmation objet
    • ... utiliser correctement le vocabulaire de la programmation objet :
      classe, instance, méthode, interface, attribut, constructeur, encapsulation, polymorphisme, héritage,
    • ... savoir décomposer un problème simple en classes et objets
    • ... savoir expliquer ce qui différencie la programmation objet des autres paradigmes
    • ... savoir expliquer ce qu'est le polymorphisme, en présenter les avantages et savoir expliquer ce qu'est le "late-binding''
    • ... être en mesure d'expliquer le principe ouvert-fermé et de l'appliquer sur des exemples simples
    • ... pouvoir identifier certaines situations de mauvaises conception objet et les corriger
    • ... mettre en œuvre l'héritage dans des cas simples
    • ... connaitre le mécanisme de lookup
  • ... savoir spécifier, coder et tester un problème objet simple dans le langage JAVA
    • ... connaître les principaux éléments de la syntaxe du langage java
    • ... être en mesure d'écrire un programme dans le langage java
    • ... savoir écrire des tests unitaires simples
    • ... mettre en œuvre des tests unitaires pour une classe
    • ... pouvoir expliquer clairement le rôle et la sémantique des éléments de langage suivants :
      new, class, interface, public, private, this, static, final, package, import, throws, throw, implements, extends, super,
    • ... savoir utiliser les types List, Set, Map et Iterator
    • ... utiliser correctement les exceptions
    • ... savoir utiliser les "outils" liés à la plateforme java :
      javac, java (et classpath), javadoc, jar

Bibliographie

  • Conception objet en Java avec BlueJ de David Barnes et Michael Kölling. Ed. Pearson Education.
  • "Java, Tête la Première" de Kathy Sierra & Bert Bates. Editions O'Reilly ISBN 2-84177-276-4
    Ce livre n'est plus édité en français, il faut donc se tourner vers la version anglaise "Head first Java" (2nd édition). Editions O'Reilly, 0-596-00920-8 ou vers la version électronique en français
  • Thinking in Java de Bruce Eckel. Disponible librement sur ce site. Une traduction en Français est ici

Jean-Christophe Routier
dernière modification : 29/06/2016 à 15:28:58
Gpe Nature Horaire Salle Enseignant e-mail
Cours mardi 10h20-11h50 M1 Archimède Jean-Christophe Routier jean-christophe.routier@univ-lille1.fr
1 TD lundi 10h20-11h50 M5 A6 Aymeric Blot aymeric.blot@ed.univ-lille1.fr
1 TP mercredi 10h20-11h50 M5 A15 Aymeric Blot aymeric.blot@ed.univ-lille1.fr
2 TD mardi 8h30-10h M5 A7 Omar Abdelkafi Omar.Abdelkafi@univ-lille1.fr
2 TP mercredi 15h20-16h50 M5 A11 Omar Abdelkafi Omar.Abdelkafi@univ-lille1.fr
3 TD mercredi 8h30-10h M5 A8 Jean-Christophe Routier jean-christophe.routier.univ-lille1.fr
3 TP mercredi 10h20-11h50 M5 A11 Jean-Christophe Routier jean-christophe.routier.univ-lille1.fr
4 TD mercredi 10h20-11h50 M5 A9 Jean-Stéphane Varré jean-stephane.varre.univ-lille1.fr
4 TP vendredi 8h30-10h M5 A13 Jean-Stéphane Varré jean-stephane.varre.univ-lille1.fr
5 TD mardi 15h20-16h50 M5 A2 Jean-François Roos jean-francois.roos@univ-lille1.fr
5 TP mercredi 8h30-10h00 M5 A12 Jean-François Roos jean-francois.roos@univ-lille1.fr
6 TD mercredi 10h20-11h50 M5 A6 Benoît Papegay benoit.papegay.univ-lille1.fr
6 TP jeudi 8h30-10h00 M5 A14 Benoît Papegay benoit.papegay.univ-lille1.fr
Jean-Christophe Routier
dernière modification : 19/12/2017 à 14:34:21
Séance Cours TD TP Remarque
1 du 15/01 au 20/01
  • présentation de l'UE
  • introduction
  • classes et objets
  • méthodes et attributs
  • constructeurs
  • envoi de message
  • le code source de l'exemple thermomètre vu en cours.
  • analyse et décomposition objet d'un problème
  • this
pas de TD pas de TP deuxième séance de cours le
  • jeudi 18 janvier de 13h30 à 15h
2 du 22/01 au 27/01
  • bases "non objets" de java (types primitifs)
  • éléments de syntaxe
  • petits exercices d'accompagnement (simples mais pour se familiariser la syntaxe)
premier contact avec les objets, via Bluej
3 du 29/01 au 03/02
4 du 05/02 au 10/02
5 du 12/02 au 17/02
6 du 19/02 au 24/02
du 26/02 au 03/03 interruption pédagogique hiver
7 du 05/03 au 10/03
8 du 12/03 au 17/03
9 du 19/03 au 24/03
10 du 26/03 au 31/03
11 du 02/04 au 07/04 lundi 2 avril férié
12 du 09/04 au 14/04
13 du 16/04 au 21/04 pas de Cours
du 23/04 au 05/05 interruption pédagogique de printemps
14 du 07/05 au 12/05
Jean-Christophe Routier
dernière modification : 18/01/2018 à 16:17:13

L'évaluation s'effectue suivant une procédure de contrôle continu. Trois notes seront attribuées à chaque étudiant durant le semestre :

  • TP : une note sur 20 de Travaux Pratiques attribuée par l'enseignant de Travaux Pratiques.
  • DS1 : une note sur 20 d'un devoir surveillé en milieu de semestre.
  • DS2 : une note sur 20 d'un devoir surveillé en fin de semestre.

La note finale sur 20 (N) est calculée comme une moyenne pondérée de ces notes :

N = (TP + sup(DS1 + 2*DS2, 3*DS2)) /4

La session de rattrapage remplace la partie sup(DS1 + 2*DS2, 3*DS2), la note TP est conservée.

L'unité acquise apporte 5 ECTS.

Jean-Christophe Routier
dernière modification : 29/06/2016 à 15:28:58

Documents du cours

Documents diffusés en cours et mis à disposition pour faciliter la prise de notes.

Compléments TD/TP

Tests (voir le TP 4 dans le semainier, en particulier la "partie 1" pour l'utilisation de ces archives) :
  • document complémentaire sur la création de jar avec librairie externe
  • la javadoc sur le site d'Oracle.

Git, quelques ressources

sujets d'examen

Ressources

  • le site chez Oracle pour télécharger la dernière version du jdk (et la javadoc associée).
  • Java Precisely, un précis de syntaxe java [pdf] [pdf format a5 book] (pour impression et agraphage)

Jean-Christophe Routier
dernière modification : 18/01/2018 à 16:24:05