CPOA

Conception et programmation objet avancées 2019-2020

Amphis

mercredi 13h et vendredi 8h en salle Amphi 2

Planning

semaine amphis fichiers amphis TD fichiers TD
2-6 sep 2019 Introduction
Rappels Java

Transparents Amphi 1
Projet exemple sur GitHub :
Cryptomator
Triangle :
Triangle.java
TriangleEquilateral.java

Transparents Amphi 2
Cellule :
Cellule.java
ReCellule.java
9-13 sep 2019 git
Collections

Transparents Amphi 3
GitLab de l’IUT
Tutoriel git par Coding Train
Tutoriel git+Eclipse
Répertoire Awesome

Transparents Amphi 4
Javadoc Vector
Javadoc LinkedList
Javadoc HashSet
Javadoc HashMap
Code exemple (avec HashSet) :
Test.java
Cellule.java
Rappels Java Énoncé TD1
English version
16-20 sep 2019 JUnit
git hooks

Transparents Amphi 5
assert sous Eclipse
Guide JUnit
Doc JUnit
Doc Stream
Code :
Carre.java
Triangle.java
TriangleTest.java

Répertoire Tests
Exemples .gitignore
GitLab CI
Collections Énoncé TD2
English version
23-27 sep 2019 Analyse statique
TDD

Article sur l’analyse statique
SpotBugs
Code :
Bugs.java

Transparents Amphi 8
Article sur TDD
JUnit Énoncé TD3
English version
30 sep-4 oct 2019 Spécifications
Immuabilité

Transparents Amphi 9

Transparents Amphi 10
Immuable.java
Classe String
JUnit (suite)
7-11 oct 2019 Design patterns
MVC

Transparents Amphi 11

Transparents Amphi 12
Code :
Main.java
Controller.java
Model.java
View.java
Observer.java
Observed.java
Immuabilité Énoncé TD4
English version
14-18 oct 2019 pas d’amphi TD noté Énoncé TD5
English version
21-25 oct 2019 Sous-types Transparents Amphi 13
Code :
ArrayTest.java
TD noté (suite)
4-8 nov 2019 Threads

Transparents Amphi 15
Quand on a trop peu de verrous
Code :
IncDeux.java
Compte.java
Javadoc :
Thread
Runnable

Transparents Amphi 16
Code :
IncDeuxLock.java
Deadlock.java
Heisen.java
Sous-types Énoncé TD6
English version
11-15 nov 2019 TCP/IP
Services Web

Code TCP/IP :
Client.java
Serveur.java
Javadoc TCP/IP :
Classe Socket
Classe ServerSocket

Code Services Web :
Client.java
Documentation Services Web :
Classe URLConnection
Librairie org.json
ICNDB
Programmable Web
Threads Énoncé TD7
English version
18-22 nov 2019 Build systems
Intégration continue

Make
Gradle

Répertoire git Gradle
Projet Android sur GitHub
Services web Énoncé TD8
25-29 nov 2019 JVM Transparents Amphi 21 TD noté Énoncé TD9
English version
2-6 déc 2019 Programmation fonctionnelle Main.java
Expressions lambda
Interface Stream
Interface Predicate
TD noté (suite)
9-13 déc 2019 Programmation orientée données
Langages modernes
Transparents Amphi 25 Préparation exam final
6-10 jan 2020 TD bonus Énoncé TD10


Notes

note finale = 40% contrôle continu + 60% exam final

Contrôle continu

Deux TD notés

Exam final

2 heures
Appliquer les notions du cours.
Tous les documents sont autorisés.

Exams passés

2018-2019

2017-2018

2016-2017

Ressources