Plan du cours
La nécessité d'une programmation orientée objet
-
Une tentative de refléter le monde réel dans la programmation
-
Les origines et l'évolution de la programmation orientée objet
-
Programowanie obiektowe en termes de principes KISS et DRY
Classes et objets
-
Idées et entités dans la philosophie de Platon
-
Le rôle des classes
-
Mise en œuvre des classes à l'aide d'objets
-
Classes, propriétés et méthodes statiques
Conventions de dénomination et de codage
-
Nommage des classes
-
Nommage des propriétés et des méthodes
-
Nommage des paquets et des dossiers
-
Autres conventions
Structure des classes
-
Propriétés/champs comme description de l'état de l'objet
-
Accesseurs
-
Méthodes en tant qu'implémentation de la fonctionnalité
Modélisation et représentation graphique des classes
- Analyse des exigences
- Modélisation de la structure des classes et des relations
- Description des objets d'entreprise
- Diagrammes EER
- Diagramme de classes UML
Paradigmes de programmation orientée objet
-
Concept de paradigme
-
Hermétisation
-
Abstraction
-
Héritage
-
Polymorphisme
Conception et mise en œuvre de la couche d'abstraction
-
Classes abstraites
-
Interfaces
-
Traits
-
Clauses imbriquées
-
Classes génériques
Création d'objets
-
Façons de créer des objets
-
Le rôle du constructeur
-
Modèle d'usine
Relations entre les classes
-
Agrégation
-
La composition
-
Décomposition de la dépendance - Découplage
-
Injection de dépendance, conteneurs DIC
-
Modèle de médiateur
Organisation du code
-
Conception de code réutilisable
-
Structure des dossiers
-
Espaces de noms, paquets, modules
Programowanie obiektowe et performance
-
Réservation de mémoire pour les objets
-
Collecteur de déchets
-
Suppression explicite d'objets, destructeurs
-
Travailler avec des références
Mécanisme de réflexion
-
Domaine d'application de la réflexion
-
Obtention d'informations sur les classes et les objets
-
L'importance de la réflexion dans la documentation et les tests de logiciels
Gestion des erreurs
-
Modèles possibles de gestion des erreurs
-
Modèle de gestion des erreurs orienté objet
-
Rôle des exceptions et de la classe Exception, lancer et attraper des exceptions
-
Bloc Try-catch-final, imbrication d'un bloc
Anti-modèles de programmation orientée objet
-
Sur-responsabilité des classes, modèle de délégation
-
Dépendances fortes
-
Singleton et problèmes potentiels
-
Modèle de domaine anémique
-
Autres anti-modèles
Pré requis
Les stagiaires doivent avoir une connaissance de base de la programmation.