Ce dépôt contient l'ensemble des ressources du cours de CMO 2025 à Polytech Lille.
Ces cours sont basés sur l'excellent MOOC : The Advanced Object-Oriented Design and Development with Pharo ainsi que sur les supports de cours donnés par S. Ducasse et G. Polito à l’Université de Lille.
Le cours est composé de plusieurs activités :
- Des vidéos du MOOC Pharo à regarder avant chaque cours
- Des cours magistraux avec discussions autour des vidéos du MOOC
- Des travaux pratiques
Chaque semaine, un ensemble de vidéos du MOOC sera à regarder avant le premier cours. Nous reviendrons sur le contenu des vidéos à chaque début de cours, pour clarifier et consolider les notions théoriques et conceptuelles. Puis, nous appliquerons ces notions au travers d'exercices pratiques guidés et exploratoires.
Chaque semaine, un devoir surveillé sera proposé en tout début de séance, et portant sur le contenu du cours précédent.
Chaque séance est associée à un répertoire portant le même nom que celui du programme (ci-après), et dans lequel vous trouverez le programmé détaillé de la séance, le matériel et les exercices qui seront pratiqués lors de la séance.
Avant chaque séance, ils vous est demandé de lire et suivre les instructions (vidéos à regarder, exercices...) du fichier preparation.md de chaque séance. Cette préparation est obligatoire et influera nécessairement sur votre compréhension du cours, des exercices ainsi que sur les notes au DS.
- 4 devoirs surveillés portant sur le contenu et les exercices du cours (50% de la note basée sur les 3 meilleurs DS)
- le vendredi 16 mai 2025
- le mardi 20 mai 2025
- le mardi 27 mai 2025
- le mardi 10 juin 2025
- 1 TP noté de 4 heures (séance du 13 juin 2025, de 13h45 à 18h)
- [S01] - 12/05/2025. Introduction : Conception et Modélisation Objet avec Pharo
- [S02] - 16/05/2025. Dispatch, Loops, Collections, Iterators and Graphics
- [S03] - 20/05/2025. Double Dispatch
- [S04] - 27/05/2025. Delegation and Null Checks
- [S05] - 10/06/2025. Couplage, Encapsulation, Sous-Typage et Typage
- [S06] - 13/06/2025. TP noté (évaluation) finale
La totalité du contenu électronique du cours se trouve en ligne :
- Le Mooc Pharo (en Français) : https://mooc.pharo.org/
- Le Mooc "Advanced Object-Oriented Design" (en Anglais) : https://advanced-design-mooc.pharo.org
- Les exercices sont, sauf indication, ici (en anglais) http://rmod-pharo-mooc.lille.inria.fr/AdvancedDesignMooc/2024-04-01-CompanionExercise.pdf