Aperçu du cours
Objectifs de formation : à l’issue de la formation, le stagiaire sera capable d’utiliser les principes et les spécificités de la conception orientée objet, de l’analyse initiale jusqu’au développement.
Prérequis
- Disposer des connaissances de base et d’une expérience en conception d'applications et en développement logiciel.
Objectifs pédagogiques
- Comprendre les principes et les spécificités de la conception Objet
- Passer d'une approche fonctionnelle à une approche Objet
- Savoir modéliser une application à l’aide d’UML (introduction)
- Comprendre l’utilité des Frameworks dans une approche Objet
- Savoir mettre en oeuvre des Design Patterns (introduction)
- Mettre en oeuvre les concepts objets à travers un programme simple
Public ciblé
- Développeurs
- Analystes
- Chefs de projets souhaitant évoluer vers les technologies du développement objet
Programme de formation
-
Introduction à la programmation
-
Présentation du contexte : intérêts et défis
-
Le fonctionnement en mode projet
-
Les acteurs du mode projet
-
Le choix de méthodologie et de l’outil
-
-
Les bases de la programmation : structuration du projet
-
Les best practices du codage
-
Le Clean Code
-
L’approche structurée
-
Couplage faible et cohérence forte
-
Les bibliothèques
-
Les données du programme
-
Travaux pratiques : Structurer un cas pratique de projet
-
-
La programmation : structurée et orientée objet
-
Le fonctionnement par objet
-
Dualité données et traitement
-
Les classes, héritages et polymorphisme
-
Les intérêts de l’encapsulation
-
-
La programmation orientée Objet (POO)
-
Le but de la POO
-
Instanciation et création d’un objet avec une classe
-
Les constructeurs
-
Libération des ressources & destructeurs
-
Le monde objet et ses objectifs
-
Les classes et objets
-
Les attributs
-
Les méthodes
-
L’encapsulation
-
L’instanciation
-
La traduction des concepts en langage
-
Organisation par package et espace de noms
-
Travaux pratiques : manipulation de code en mode objet, utilisation des bibliothèques.
-
-
Héritage et encapsulation
-
Spécialisation d’une classe et réutilisation du code
-
Encapsulation : usages et bénéfices
-
Méthode dans une classe fille et polymorphisme
-
Classes & méthodes abstraites
-
-
UML : introduction au standard
-
Présentation d’UML
-
Modélisation dans les projets complexes
-
Diagrammes et points de vue
-
Outils de modélisation
-
-
Système logiciel et UML
-
Définition de l’architecture matérielle et du framework
-
Conception du code source
-
Architecture du code : pattern en couches MVC
-
Conception des attributs
-
Conception des traitements et communication entre classes
-
Affinement de la structuration du code source : packages, héritage, communication des classes, états…
-
Composantes déployables
-
-
Les design patterns
-
Solutions de conception cataloguées
-
Méthodologie : définition des besoins, classes et collaborations
-
Présentation des patrons de conception
-
Principaux patrons de conception de chaque catégorie
-
Documentation d’un patron de conception et présentation des différents diagrammes UML
-
Best practices des design patterns
-