Conception objet avec C#
Concepts de base des objets
Notion d’abstraction
Caractéristiques des objets
État et comportement
Cycle de vie des objets
Les mécanismes objet
Encapsulation
De la programmation structurée vers la programmation objet
Les limites de la programmation structurée
Les objectifs du monde Objet
Techniques de base des objets
Classe et instance
Message et méthode
Composition
Agrégation
Héritage
Classes et méthodes abstraites
Surcharge
Redéfinition
Concept d’interface
Concept de méta-classe
Principe du « garbage collector »
Les erreurs à éviter
Avantage des technologies objet
Comparatif par rapport aux solutions « traditionnelles »
Lisibilité
Réutilisation
Compacité
Modularité
Fiabilité
Maintenabilité
Évolutivité
La généralisation de l’objet
Les méthodologies objet
L’apport de la notation UML
Les design patterns
La notion de framework
Les difficultés de la réutilisation
La problématique de la persistance
Le mapping objet-relationnel
Les bases de données objet
Un standard connexe : XML
Les plates-formes de développement objet
Analyse objet et Design Patterns
Présentation sommaire d’UML
Modèle statique et dynamique
Cas d’utilisation
De l’analyse à la conception
Les qualités visées d’un modèle objet
Principes des design patterns
Principes techniques de la conception d’une application objet
Origine et portée des patterns
Avantages et les limites des design patterns
Résoudre des problèmes récurrents
Assurer la pérennité des développements
Principes de construction des classes
Gestion raisonnée des dépendances avec l’inversion de dépendance (DIP)
Réduction de la complexité apparente par la séparation des interfaces (ISP)
Répartition des responsabilités avec le principe de GRASP
Rôle et application
Usage :
– Dans la phase analytique
– En conception
– En rétro-ingénierie
Refactoring : bonnes pratiques et critères d’évaluation du modèle objet
UML
Modélisation des Design Patterns
Intégration dans un diagramme de classes
Organisation du catalogue
Classification : créationnel, structurel, comportemental
Application : création, dépendance, fonctionnalité, granularité, évolution
Design Patterns GOF
fabrique abstraite, adaptateur, pond, constructeur, chaîne de responsabilité, commande, composite, décorateur, façade, méthode de fabrique, poids mouche, interpreteur, itérateur, mediateur, memento, observateur, prototype, proximité, singleton, état, stratégie, Modèle de méthode, visiteur
Design patterns d’architecture applicative
DAO
Dispenseur
Dispatcher
Helper class
Ajuster aux besoins applicatifs
Contraintes de réalisation
Implémentation et ajustement selon les langages
Créer de nouveaux Design Patterns
Design pattern de ressources limitées
Compteur de référence
Du Design Pattern au Framework
Mise en œuvre dans les solutions applicatives
Étude de cas
Modélisation du besoin
Identification des patterns
Affinage et sélection
Ajustement
Modélisation de la solution retenue