La Programmation Orientée Objet (POO) est un paradigme de développement logiciel basé sur l’utilisation de classes et objets pour modéliser des systèmes complexes de manière modulaire, réutilisable et extensible.
Ce cours a pour objectif de fournir aux étudiants les connaissances essentielles pour concevoir et développer des applications en utilisant les principes fondamentaux de la POO.

Le module commence par une introduction au paradigme orienté objet, en expliquant ses avantages par rapport à la programmation procédurale. Il présente les concepts de base tels que objet, classe, attribut, méthode.

Les chapitres suivants couvrent les piliers majeurs de la POO :

  • Classes et objets : création, attributs, méthodes, constructeurs, visibilité et encapsulation des données.

  • Encapsulation et abstraction : protection des données, utilisation de getters/setters, classes abstraites et interfaces.

  • Héritage : réutilisation du code, hiérarchies de classes, redéfinition de méthodes et polymorphisme.

  • Polymorphisme : surcharge et redéfinition, comportement dynamique selon le type réel de l’objet.

  • Gestion des exceptions : capture et traitement d’erreurs, exceptions personnalisées.

  • Collections et structures avancées : tableaux dynamiques, listes, dictionnaires, itérateurs.

  • Patterns de conception : présentation des modèles les plus utilisés pour structurer le code (Singleton, Strategy, Observer, Factory).

Le cours met également l’accent sur la modélisation orientée objet, les bonnes pratiques de conception et la capacité à produire du code propre, maintenable et évolutif.
Chaque chapitre inclut un quiz d’évaluation afin de renforcer l’apprentissage progressif.

À la fin du module, l’étudiant sera capable de concevoir et développer une application complète orientée objet, de comprendre et appliquer les concepts avancés de conception logicielle et d’utiliser les patterns adaptés selon les contextes.