fff

Combien de stagiaires suivront cette formation ?


Valider Annuler

Accueil    Formations    Informatique    Langages et développement    PHP    PHP 5, 7 et 8 - Développement Web avancé et programmation objet

Partager cette formation Télécharger au format pdf Ajouter à mes favoris



PHP est un langage de programmation libre destiné à créer les pages Web dynamiques et optimiser le code. La certification M2i Langages de Programmation vous permet d'attester de vos compétences opérationnelles en développement Web : automatisation des tâches, réalisation de sites dynamiques.

Objectifs pédagogiques / Compétences visées

Cette formation vous permettra de développer les compétences suivantes :

  • Coder en objet en PHP
  • Structurer une architecture MVC
  • Mapper des objets avec PDO et l'ORM Doctrine
  • Créer des Web Services REST
  • Déterminer les bonnes pratiques.

Niveau requis

Avoir des connaissances pratiques de base sur PHP.

Public concerné

Programmeurs, responsables informatique, développeurs d'applications et spécialistes de bases de données.

Programme

Jour 1

La programmation objet en PHP

  • Classes, objets, méthodes et propriétés
  • Visibilité des attributs
  • Le constructeur
  • L'héritage et les interfaces
  • Gestion des exceptions en PHP objet
  • Apports de PHP 8 pour les classes et fonctions
  • Les classes Weak Map
  • L'interface Stringable
  • Fonctions str_contains, starts_with, ends_with
  • Nouvelles API d'accès au DOM
Exemples de travaux pratiques (à titre indicatif)
  • Conception d'une architecture de programme incluant des classes représentant des composants métier et des entités
  • Création de classes intégrant des propriétés et des méthodes
  • Ajout de la visibilité de ces attributs
  • Ajout de l'héritage
  • Conception d'interfaces et exploitation du polymorphisme
  • Création de composants clients permettant d'instancier ces objets
  • Ajout d'un traitement des exceptions sur ce programme

Jour 2

Les espaces de nommage

  • Avantages et impacts sur le code
Exemple de travaux pratiques (à titre indicatif)
  • Utilisation des espaces de nommage dans un projet fourni

Conception MVC

  • Séparation des attributions entre scripts
  • La couche modèle et données
  • Le rôle du contrôleur
  • Le rôle des vues
  • Force de l'objet dans le modèle MVC
Exemples de travaux pratiques (à titre indicatif)
  • Modification du projet précédent afin de l'intégrer dans un modèle MVC créé lors du cours
  • Création du composant contrôleur et des vues
  • Ajout d'un routage simple

Jour 3

Couche d'accès aux données

  • La couche d'abstraction PDO
  • Limites de PDO
  • Mapping objet relationnel et Data Access Layer
Exemples de travaux pratiques (à titre indicatif)
  • Modification du projet déjà mené pour ajouter des accès PDO à une base de données MySQL
  • Ajout des divers types d'accès à la base, avec requêtes diverses

Etude d'un ORM

  • Création des classes entités
  • Les fichiers de configuration
  • Les annotations
  • Le mode "commande"
  • Génération de la base
  • Gestion des identifiants
  • Génération des requêtes
  • Mapping sur base existante
  • Lazy loading et associations

Jour 4

Etude d'un ORM - Suite

  • Rappel des points abordés la veille
Exemples de travaux pratiques (à titre indicatif)
  • Utilisation d'un ORM comme Doctrine pour réaliser les accès base
  • Configuration, réalisation des POPO et traitement depuis un client

PHP et les services Web

  • Introduction aux services Web
  • Rappels XML
  • Extension SOAP
  • SoapServer et SoapClient
  • Choisir SOAP ou REST ?
  • Présentation de REST
  • Ecriture d'un Web Service REST
  • Manipulation de JSON en PHP
  • Présentation de JSON-RPC
  • Comparatif de JSON-RPC avec REST
Exemple de travaux pratiques (à titre indicatif)
  • Création d'un programme serveur de Web Service SOAP (et REST) ainsi qu'un client

Jour 5

Sécurité

  • Configuration de PHP
  • Safe mode
  • Configuration de MySQL
  • XSS et Injections

Bonnes pratiques de développement en PHP

  • Débogage et profiling
  • Mise en cache et compression
  • Pistes pour les performances
  • Les solutions de codage à retenir
Exemples de travaux pratiques (à titre indicatif)
  • Ecriture et compréhension des patterns utiles en PHP
  • Ecriture de code exploitant les bonnes pratiques, pour la version donnée de PHP (5 et 7)

Fonctionnalités utiles

  • FPDF
  • GD
Exemples de travaux pratiques (à titre indicatif)
  • Ecriture d'un programme de formatage d'une sortie PDF avec FPDF
  • Conception de graphiques sur le serveur avec GD et rapatriement sur le client

Examen M2i (en option)

  • Prévoir l'achat de l'examen en supplément
  • L'examen (en français) sera passé le dernier jour, à l'issue de la formation et s'effectuera en ligne
  • Il s'agit d'un QCM dont la durée moyenne est d'1h30 et dont le score obtenu attestera d'un niveau de compétence
  • L'examen n'est pas éligible au CPF, mais permettra néanmoins de valider vos acquis

Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.

Modalités d’évaluation des acquis

  • En cours de formation, par des études de cas ou des travaux pratiques
  • Et, en fin de formation, par un questionnaire d'auto-évaluation et/ou un examen M2i

Les + de la formation

Un examen M2i permettant de valider vos acquis à l'issue de la formation est disponible sur demande (coût : 120€).

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Vous souhaitez suivre cette formation ?

Cette formation est disponible en présentiel ou en classe à distance, avec un programme et une qualité pédagogique identiques.

Choisissez la modalité souhaitée pour vous inscrire :

Formation disponible en intra-entreprise

Votre société a besoin d'une offre personnalisée ? Contactez-nous

Testez vos connaissances

Nos quizz vous guident dans le choix de formation.
Évaluez votre niveau de pré-requis pour découvrir la formation faite pour vous.

Accédez au test de connaissance

À la suite de cette formation, nous vous suggérons :

Découvrez les autres formations susceptibles de vous intéresser :

Laravel

9 4,6/5


3 jours
Perfectionnement / Avancé

Présentiel Classe à distance

CakePHP

9 4,6/5


3 jours
Perfectionnement / Avancé

Présentiel Classe à distance

Faites-nous part de votre projet de formation, nous sommes là pour vous guider.

Contactez-nous