» Du PHP ? à plat ? à la structure MVC
Comprendre la séparation en couches.
Mettre la logique métier dans des classes.
Utiliser la syntaxe PHP alternative pour les templates.
Découper un projet en niveaux application, module, action.
L'arborescence des fichiers d'un projet Symfony.
Lier des pages entre elles.
Comprendre la théorie du design pattern MVC.
» Le Templating avec Symfony
Utiliser un helper et un helper group.
Construire un formulaire avec des helpers.
Concevoir des templates modulaires.
Utiliser le view.yml pour modifier la vue.
» L'environnement de travail Symfony
Utiliser plusieurs environnements de développement.
Comprendre le déroulement d'une requête avec la web debug toolbar.
analyser les requêtes avec les fichiers de log.
Apprendre la syntaxe YAML.
Comprendre le cache de la configuration et symfony cc.
Explorer les fichiers de configuration.
Utiliser la ligne de commande Symfony.
Déboguer une application Symfony.
» Le routing et le protocole HTTP
Comprendre ce qu'est une URL. Le get et le post.
Utiliser Apache et le rewriting d'URL.
Utiliser un helper pour formater les requêtes sortantes.
Comprendre le front controller.
Comprendre le routing bidirectionnel.
Distinguer un redirect et un forward.
Ajouter une extension à une page.
Utiliser le routing pour gérer une arborescence de navigation.
» L'abstraction Objet-Relationnel
Manipuler des objets métier.
Se protéger des injections SQL.
Abstraire le SQL pour pouvoir changer de base de données.
Ecrire un schéma relationnel pour Doctrine.
Connecter une application à une base de données.
Générer un modèle objet.
Utiliser les classes générées par Doctrine.
Utiliser l'objet Doctrine_Query pour requêter la base de données.
Traduire une requête SQL en requête objet.
» L'installation du framework
Installer Symfony depuis une sandbox, PEAR, SVN.
Initialiser un projet, un module, un suivi de version.
Configurer un serveur web.
Mettre à jour Symfony.
Installer Symfony sur un serveur de production. Synchroniser deux installations.
» L'admin generator
Générer ou initier un module.
Initier une administration.
Explorer le code généré.
Utiliser le generator.yml pour modifier le code généré.
Modifier la vue liste et la vue edit.
Personnaliser des templates. Utiliser des thèmes.
Comprendre les templates de templates.
» Les tests
Valider un élément de code avec un test unitaire.
Utiliser lime et la ligne de commande symfony test:unit, test:functional et test:all.
Valider une fonctionnalité avec un test fonctionnel.
Utiliser l'objet sfTestBrowser pour simuler une navigation entre des pages.
Vérifier un élément de page avec le Dom CSS Selector.
Automatiser les tests.
» Le cache
Mettre en cache le résultat de requête, une page avec ou sans layout, un composant de la vue.
Explorer l'arborescence des fichiers cachés.
» L'internationalisation et la localisation
Identifier les textes de l'interface à traduire (__()).
Traduire une interface avec un dictionnaire XLIFF.
Formater automatiquement une date, un nombre, un montant. Stocker des informations différentes selon la localisation.