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.5/5

  1. Evaluation de la pédagogie : 4.5/5
  2. Evaluation du contenu : 4.7/5
  3. Evaluation du rythme : 4.4/5
Les notations sont la synthèse des appréciations cumulées de nos stagiaires du 01/01/2023 au 31/12/2023.

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 Zoom/WhereBy 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 handicaplaurent.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.
  • Durée

    3 jour(s)
  • Niveau

    Intermédiaire
  • Langues disponibles

    Français, Anglais
  • Pays disponibles

    France, Monde
A partir de 1 590,00 €
Aucune session prévue

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 !