PHPC2 | Maîtrise de la Programmation Orientée Objet avec PHP 8 et Les Design Patterns
- Maîtrisez la programmation orientée objet en PHP 8 au travers de nombreux exemples pratiques, avec des experts reconnus. Cette formation est ouverte à distance. N'hésitez pas à nous consulter !
-
Prérequis
Maîtrise du langage PHP -
Objectifs
En trois jours, vous apprendrez tous les concepts essentiels de la programmation orientée objet en PHP afin de devenir opérationnel sur des frameworks tels que Symfony, Silex, Laravel, Drupal ou Zend. Vous apprendrez à développer en orienté objet avec les toutes dernières versions de PHP et notamment PHP 8.
Programme détaillé
Supports mis à jour en Février 2022
Introduction à la Programmation Orientée Objet
- Introduction aux concepts de POO
- Avantages de la POO
- Grands principes de la POO
- Apprendre à réfléchir en mode objet
- Nouveautés fonctionnalités majeures depuis PHP 5.3
Fondamentaux de la programmation orientée objet
- Comprendre les notions de classes et d'objets
- Définir l'état d'un objet avec les propriétés
- Lire et modifier l'état d'un objet grâce aux méthodes
- Instancier et initialiser un objet avec son constructeur
- Détruire proprement un objet grâce à son destructeur
- Assurer l'encapsulation grâce aux portées des attributs et des méthodes
- Comprendre la différence la portée d'instance et la portée de classe
- Spécialiser des classes grâce au mécanisme d'héritage
- Tirer profit des classes pour définir de nouveaux types de données
Concepts avancés de la programmation orientée objet
- Généraliser des types grâce aux classes et méthodes abstraites
- Empêcher la spécialisation de classes ou la redéfinition des méthodes
- Redéfinir et surcharger le comportement d'une méthode parente
- Gérer proprement les erreurs avec le mécanisme des exceptions
- Concevoir des contrats d'implémentation grâce aux interfaces
- Surcharger des comportements implicites d'objets avec les « méthodes magiques »
- Mettre en place des mécanismes de chargement automatique des classes
- Organiser les structures de données dans des espaces de nommage (« namespaces »)
- Factoriser des comportements réutilisables grâce au mécanisme des « traits »
Tirer profit de la SPL de PHP 8
- Découvrir la « Standard PHP Library »
- Lever des exceptions spécifiques de la SPL
- Utiliser les nouvelles structures de données de la SPL
- Créer des itérateurs d'objets avec l'interface « Iterator »
- Dénombrer les objets d'une collection avec l'interface « Countable »
- Déguiser un objet en tableau PHP avec l'interface « ArrayAccess »
Mettre en pratique les outils orientés objets de PHP 8
- Manipuler des bases de données relationnels avec les objets PDO
- Parcourir les données d'un fichier XML avec les objets SimpleXML
- Manipuler et formater des dates avec les objets DateTime
- Accéder aux informations des fichiers grâce aux objets SplFileInfo
Acquérir les bonnes pratiques de développement objet
- Savoir commenter et annoter du code avec la « phpdoc »
- Maîtriser les grands principes de SOLID
- Programmer par rapport à des interfaces
- Favoriser la composition plutôt que l'héritage
- Découvrir quelques grands patrons de conception
- Introduction aux principes de tests unitaires
Programme horaire
Jour 1
-
MATIN
Introduction à la Programmation Orientée Objet
- Introduction aux concepts de POO
- Avantages de la POO
- Grands principes de la POO
- Apprendre à réfléchir en mode objet
- Nouveautés fonctionnalités majeures depuis PHP 5.3
-
APRES-MIDI
Fondamentaux de la programmation orientée objet
- Comprendre les notions de classes et d'objets
- Définir l'état d'un objet avec les propriétés
- Lire et modifier l'état d'un objet grâce aux méthodes
- Instancier et initialiser un objet avec son constructeur
- Détruire proprement un objet grâce à son destructeur
- Assurer l'encapsulation grâce aux portées des attributs et des méthodes
- Comprendre la différence la portée d'instance et la portée de classe
- Spécialiser des classes grâce au mécanisme d'héritage
- Tirer profit des classes pour définir de nouveaux types de données
Jour 2
-
MATIN
Concepts avancés de la programmation orientée objet
- Généraliser des types grâce aux classes et méthodes abstraites
- Empêcher la spécialisation de classes ou la redéfinition des méthodes
- Redéfinir et surcharger le comportement d'une méthode parente
- Gérer proprement les erreurs avec le mécanisme des exceptions
- Concevoir des contrats d'implémentation grâce aux interfaces
- Surcharger des comportements implicites d'objets avec les « méthodes magiques »
- Mettre en place des mécanismes de chargement automatique des classes
- Organiser les structures de données dans des espaces de nommage (« namespaces »)
- Factoriser des comportements réutilisables grâce au mécanisme des « traits »
-
APRES-MIDI
Tirer profit de la SPL de PHP 8
- Découvrir la « Standard PHP Library »
- Lever des exceptions spécifiques de la SPL
- Utiliser les nouvelles structures de données de la SPL
- Créer des itérateurs d'objets avec l'interface « Iterator »
- Dénombrer les objets d'une collection avec l'interface « Countable »
- Déguiser un objet en tableau PHP avec l'interface « ArrayAccess »
Jour 3
-
MATIN
Mettre en pratique les outils orientés objets de PHP 8
- Manipuler des bases de données relationnels avec les objets PDO
- Parcourir les données d'un fichier XML avec les objets SimpleXML
- Manipuler et formater des dates avec les objets DateTime
- Accéder aux informations des fichiers grâce aux objets SplFileInfo
-
APRES-MIDI
Acquérir les bonnes pratiques de développement objet
- Savoir commenter et annoter du code avec la « phpdoc »
- Maîtriser les grands principes de SOLID
- Programmer par rapport à des interfaces
- Favoriser la composition plutôt que l'héritage
- Découvrir quelques grands patrons de conception
- Introduction aux principes de tests unitaires
Appréciation de la formation
Moyenne globale : 4.2/5
- Evaluation de la pédagogie : 4.1/5
- Evaluation du contenu : 4.5/5
- Evaluation du rythme : 4.1/5
Modalités pédagogiques et techniques
Notre cursus est conçu selon les principes suivant :
· Répartition du temps d’apprentissage entre 40% de théorie & 60% de pratique
· Mise en pratique par l’exercice
· Échanges réguliers avec le formateur et les participants. Pas plus de 10 personnes par session.
Supports pédagogiques : le formateur partagera les supports de cours. Ils sont en anglais, mais le formateur parle français.
Pour les sessions à distance, les formations seront enregistrées et les vidéos seront disponibles sur une plateforme de révisions pendant 1 mois.
Matériel pédagogique : mise à disposition de l’ensemble du matériel collaboratif.
Technologie : Pour les formations à distance, un lien GoogleMeet est utilisé pour la projection du support de formation et pour soutenir les exercices pratiques.
Apprenant en situation de handicap, nous sommes à vos côtés pour identifier les aménagements les plus adaptés des modalités et des supports pédagogiques ou les aides humaines pertinentes.
Pour plus d’informations, contactez notre référent handicap : laurent.vaquette@sensiolabs.com / 01 86 65 72 25
Modalités évaluatives
- Un contrôle de connaissances sous forme de QCM est réalisé pendant et à l’issue de la formation. Il permet de valider et de reprendre les points non assimilés.
- Un certificat de réalisation d’une action de formation est transmis à l’apprenant.
- Une copie de la feuille d’émargement est transmise au commanditaire
Modalités d'inscription
- Une commande doit être formulée via le formulaire d’inscription sur notre site, via le mail Training ou par téléphone.
- L’inscription sera définitive après réception du devis signé et d’un paiement intégral ou d’un accord de prise en charge d’un OPCO, avant le début de la formation.
- Télécharger le livret d’Accueil
Nos autres formations sur le même sujet
-
Durée
3 jour(s)
-
Niveau
Intermédiaire
-
Langues disponibles
Français, Anglais -
Pays disponibles
France, Monde
Aucune session n'est prévue pour cette formation. Nous organisons cependant des sessions de formation sur mesure, n'hésitez pas à nous contacter pour plus d'informations !