POO et Design Patterns
Développement Boîte à outilsDurée
3 jour(s)Niveau
IntermédiaireRéférence
DE-088
Présentation
Le développement informatique nécessite d’être organisé et structuré pour faciliter la maintenance et l’évolutivité, en particulier dans le cadre d’un projet volumineux. Ces trente dernières années, de nouveaux outils repoussent les limites de l’algorithmique et du code modulaire, nommément les paradigmes de programmation comme la Programmation Orientée Objet (POO) ou des structures de code ingénieuses comme les patrons de conception (Design Patterns). Grâce à ces techniques de développement, vous rendrez vos programmes plus aisés à relire et à améliorer, réduirez les causes de bug et faciliterez la refonte en cas d’évolution d’environnement technique.
Au cours de cette formation, vous découvrirez et apprendrez à programmer de manière orientée objet. Vous saurez utiliser les quatre composantes importantes de la POO que sont l’encapsulation, l’agrégation, le polymorphisme et l’héritage. Enfin, vous découvrirez et apprendrez à réaliser différents Design Patterns pour créer des structures de codes plus modulaires et résilientes.
Objectifs de la formation
- Comprendre la notion de paradigme dans un langage de programmation
- Savoir construire des classes avec des propriétés et des méthodes
- Savoir expliquer et utiliser l’encapsulation, l’agrégation, le polymorphisme
- Savoir utiliser l’héritage et les interfaces
- Savoir implémenter dans son développement différents Design Patterns
Public
- Toute personne souhaitant améliorer ses compétences en développement informatique.
Prérequis
- Une connaissance d’un langage de programmation est nécessaire
Programme
1- Paradigmes de programmation
Pourquoi des paradigmes ?
Les paradigmes des langages de programmation les plus utilisés
Avantages et inconvénients des paradigmes
2- La programmation orientée objet
Qu’est-ce que la programmation orientée objet ?
Les classes et les objets
Les propriétés et les méthodes, l’état et le comportement
Le constructeur
3- Les caractéristiques de l'orientée objet
Encapsulation : portée des variables, accesseurs (getter) et mutateurs (setter)
Agrégation : relier des objets
Héritage : extension de classe, spécificités de différents langages
Polymorphisme : surcharge et généricité, spécificités de différents langages
4- Les types autour de la programmation orientée objet
Les interfaces
Les énumérations
Les structures
Spécificités des langages : classes partielles, traits, le type Object
5- Les patrons de conception (Design Patterns)
Historique des Design Patterns
Cas d’usage des Design Patterns : couplage, anti-patterns, séparation des préoccupations
Principaux Design Patterns : Composition, Singleton et Usine (Factory), Adaptateur (Adapter), Chaîne de responsabilité (Chain of Responsability)
L’inversion de contrôle et fonctionnement des frameworks
Date de dernière modification : 26/10/2022
Organisation
Modalités d'évaluation :
Questionnaires à choix multiples (QCM) en fin de formation. L'intervenant formulera également une appréciation sur vos acquis pour l'entièreté de la formation.
Moyens pédagogiques :
Formation alternant la théorie et la pratique, avec un intervenant présentant la formation en direct. Possibilité de réaliser cette formation en face-à-face dans nos locaux, dans vos locaux d'entreprise ou à distance via visioconférence.
Une fois terminée, vous disposerez d'une attestation de suivi de la formation, ainsi que des contenus de cours relatifs au contenu présenté.
Informations pratiques :
En cas de dispense dans nos locaux, le matériel informatique est fourni et l'ensemble des commodités sont accessibles. Nos locaux sont également accessibles aux personnes à mobilité réduite : découvrir notre centre.
Retrouvez toutes les informations pratiques pour préparer votre formation sur notre page dédiée : informations pratiques.
Ces formations pourraient vous intéresser
Architecture logicielle avec Java
L’architecture logicielle est une composante importante des projets informatiques. Elle consiste à réduire les interdépendances (ou couplage) d’un projet pour créer des applications résilientes, aisées à maintenir …
JavaScript : Design Patterns et orienté prototype
JavaScript est un langage disposant de multiples paradigmes de programmation en son sein. On y retrouve des éléments de programmation fonctionnelle avec l’utilisation massive des fonctions « map », « reduce » …
PHP : créer un environnement robuste et résilient
Si PHP 4, il y a plus de quinze ans, utilisait un paradigme uniquement procédural (structuré en fonctions), le langage a fait son chemin et propose aujourd’hui les paradigmes orienté objet et fonctionnel. L’environnement …