Accès clients

Formation Symfony et Doctrine

Cette formation sur quatre journées consécutives, a pour but de donner toute autonomie aux développeurs PHP5 aguéris à la pratique de la Programmation Orientée Objet pour développer des applications Web en utilisant le framework Symfony 1.4 et l'ORM Doctrine 1.2.

Publics cible

Tout développeur Web maîtrisant le langage PHP dans sa version 5, ayant parfaite connaissance des notions basiques de la Programmation Orientée Objet, une première expérience de la mise en œuvre du framework Symfony et/ou de l’ORM Doctrine étant un plus.

Programme

Rappels sur PHP

  • Connaître les spécificité du langage PHP
  • Connaître les apports de la version 5 de PHP
  • Comprendre la notion de « programmation orientée objet »
  • Comprendre les notions d'erreur et d'exception en PHP
  • Introduction aux design patterns

Découvrir Symfony

  • Comprendre le design pattern MVC (Modèle Vue Contrôleur)
  • Naviguer dans l'arborescence des fichiers d'un projet Symfony
  • Comprendre les notions d'Application, Module, Action
  • Comprendre la notion d'environnements
  • Savoir installer Symfony depuis Subversion
  • Savoir utiliser la ligne de commande Symfony
  • Savoir initialiser un projet, une application, un module

L'environnement de travail Symfony

  • Utiliser efficacement la Web Debug Toolbar
  • Configuration en cascade
  • Connaître et utiliser la syntaxe YAML
  • Connaître les différents fichiers de configuration (settings.yml, app.yml, projectConfiguration.class.php, ...)
  • Installer des plugins : intérêt et contraintes

Contrôleur, requête, réponse et routing

  • Comprendre ce que sont une URL et une méthode HTTP
  • Comprendre le front contrôleur, le dispatching et les actions
  • Comprendre la notion de mapping url/objet avec sfObjectRoute
  • Comprendre la bidirectionnalité du routing Symfony
  • Connaître et exploiter la requête, les formats, manipuler la réponse
  • Envoyer des e-mails depuis un contrôleur

Le templating

  • Comprendre l'intérêt des helpers
  • Comprendre les limites de PHP en tant que moteur de template
  • Concevoir des templates modulaires avec les partials et les slots
  • Savoir mettre en en oeuvre des composants (components)
  • Savoir gérer les fichiers statiques en Symfony
  • Savoir utiliser le view.yml et les méthodes de la réponse pour modifier la vue
  • Connaître quelques bonnes pratiques de templating

La sécurité

  • Comprendre la notion d'attaque XSS et s'en prémunir
  • Comprendre la notion d'attaque CRSF et s'en prémunir
  • Comprendre l'authentification et les autorisations d'accès en exploitant les credentials
  • Configurer le fichier security.yml
  • Comprendre l'intérêt des routes nommées

L'ORM Doctrine et son intégration dans Symfony

  • Connaître la syntaxe YAML de description du modèle de données Doctrine
  • Savoir connecter une application à une base de données au moyen du fichier databases.yml
  • Savoir manipuler des objets métier
  • Savoir écrire ses requêtes en DQL (Doctrine Query Language)
  • Savoir utiliser et manipuler les accesseurs d'objet Doctrine
  • Savoir gérer les relations avec Doctrine (1:1, 1:n, n:m)

L'admin generator

  • Savoir initialiser un module d'administration d'objet issu de l'ORM
  • Connaître les différences entre scaffolding et un admin-generator
  • Savoir utiliser le fichier generator.yml pour modifier le code généré

La gestion des droits et la session

  • Savoir stocker des informations en session et y accéder
  • Gérer des messages d'alerte et d'erreur (« flashes »)
  • Authentification et déconnecter les utilisateurs
  • Définir les permissions d'accès
  • Paramétrer les droits d'accès grâce au système de credentials

Les tâches en ligne de commande

  • Intérêt d'utiliser les tâches en ligne de commande (« tasks »)
  • Création d'une tâche de traitement exploitable en ligne de commande

Les tests unitaires et fonctionnels

  • Comprendre l'intérêt des tests unitaires et fonctionnels
  • Contrôler l'intégrité d'une API avec les tests unitaires
  • Découvrir Lime, le framework de test unitaire de Symfony
  • Vérifier une fonctionnalité avec les tests fonctionnels
  • Vérifier un élément de page avec les sélecteurs CSS
  • Automatisation des tests et mise en place d'un contrôle d'intégration continue avec HUDSON

Modalités

La formation s'effectue directement dans vos locaux, une salle équipée d'un vidéoprojecteur devant être mise à disposition pour la tenue de la formation, et les postes des stagiaires (huit stagiaires maximum) installés et configurés avec les éléments suivants :

  • Serveur Web Apache en version 2.2 ou supérieure ;
  • PHP en version 5.2.4 ou supérieure ;
  • MySQL en version 5 ou supérieure.

Cette formation donne lieu à la mise en place d'une convention de formation et est en ce sens éligible au titre de la formation professionnelle continue. A l'issue de la formation sont délivrées les attestations de formation et feuilles d'émargement nécessaires à une éventuelle prise en charge par l'OPCA.

Pour plus de renseignements ou toute demande particulière, n'hésitez pas à prendre contact avec nous.

Une question ?

Pour des besoins plus particuliers, n'hésitez pas à nous contacter directement.

Contactez-nous !