Pourquoi j'ai choisi Symfony 2 ... ?
Responsable Technique
Meetserious
Symfony ./ Intervenant
symfony.3wa.fr
~
22M
Downloads
~
2K
Contributors
~
200K
Developers
Framework Moderne
100%
PHP Orienté Objet
Qu'est ce qu'un framework?!
Déjà entendu ? utilisé ?
Mieux coder, c'est être
Plus maintenable // Plus collaborative
Plus efficace // Plus logique
Plus rapide // Plus scalable
Plus évolutive // Plus structurée
Plus organisée // Plus sécurisée
Plus plus plus ...
Pour qui Symfony 2 ?!!
Persévérant // Courageux
Ambiteux // Rigoureux
Curieux // Organisé
Travailleur // Perfectioniste
Il y a t-il du danger à développer
"from-scratch" aujourd'hui en PHP ?!
Et pour quelques
CMS de plus....
History of Symfony
Fabien POTENCIER
(@fabpot)
Créateur de
Symfony 2
Co-fondateur de SensioLabs
Symfony 2 versions
Utilisation full-stack de
Symfony 2
Installation du framework
Web Debug Toolbar
Arborescence
Couches de Symfony 2
Précision et Professionnalisation
Du PHP avant tout !
HTTP Fondamentals
Couche Routing
Couche Controlleur
Couche Vue
La configuration
Les Formulaires
La couche Modèle
Du SQL à l'objet PHP...
Et si on deboguait...?
Profiler & Deboger
Utilisation de la console
Le Kernel
Authentification
Bundles et Composants
Un ensemble de composants découplés
Les Tests Unitaires et Fonctionnels
Contrôler votre code
Performances & Monitoring
Monitoring de performances
Des performances accrues pour une audiance très élevée
Une
levée
de fond historique
Micro-framework basé sur Symfony 2
Moyen framework basé sur Symfony 2
Communauty is a Big Family... :)
It's work around the world!
Une Communauté de contributeurs internationaux
Hiérarchie interne
De nombreux Bundles sur Symfony 2
Mooc de Symfony 2 sur OpenClassRoom
De nombreux événements partout dans le monde
Numéro 1 des plugins
PhpStorm
Tester la sécurité et les standards
PHP
Gammification de la qualité des projets
1ère Levée de fond pour un projet Open Source...
Certification Symfony 2
Gammification Symfony 2
Un framework très demandé et recherché...
Solution E-Commerce basé sur Symfony 2
Solution E-Commerce basé sur Symfony 2
Solution CRM basé sur Symfony 2
Projet fil-rouge
SymfoAcademy
Inspiré par
Allociné
...
Dashboard du Back-Office
Page Catégories du Back-Office
Page Réalisateurs du Back-Office
Quelques aperçus...
...et des technologies montantes
About the futur
Symfony 3
en marche
...et le langage évolue vers sa version 7 !
Quand Facebook contribue aussi à PHP
Horus CMF
Mon projet Symfony 2
Démonstration
github.com/Symfomany/prez
Platinum Medal SensioLabsInsight
Tous les test passent sur Travis
Et sur Scrutinizer...
Collation UTF-8 MySql
Timezone sous php.ini
OPCache de PHP 5.5
symfony.com/download
https://getcomposer.org/
Mettre les droits d'écriture sur les logs et le cache
php app/check.php pour checker la configuration
Autoload et norme PSR-4
Composer: Autoload et Namespaces
Création de Bundle
Fichier principal du Bundle
Routing - Controlleur - Vue
Annotations
Routing
Gérer vos dépendances avec composer.json
Récupérer Composer
Mettre à jour vos dépendances
Installer Symfony 2 via
Composer
Multi-Héritage de vue
Héritage 3 Tiers
Twig: Système de blocks
Front Controlleur avec Requête-Réponse
Configuration globale du projet
Référence d'une configuration de couche
Objet Response
Redirection
Forward
Not Found Exception
Messages flashs
Argument en route
Transmission de données
Render
dump() pour déboger
Metadatas Doctrine
Générer les entités
Générer les méthodes d'entités
Annotations
Formulaire en classe
Traitement des formulaires
Génération de formulaire
Déboger son formulaire
Formulaire et Entité
Validation par annotations
Couche Security
Toolbar Authentification
Internationalisation
Objet Trans
Langue choisie depuis le routing
Langue choisie depuis Twig
Ecrire des Tests Unitaires
Ecrire des Tests Fonctionnels
HTTP Cache
Cache-Control
Expires
ETag
Last-Modified
Cache-Control
Entête de la Réponse
Entête Cache-Control
HTTP Cache Complet
Les données initiales
Fixtures par classe
Génération de Documentation
PHPDocumentor Responsive
Avec FOSRestApi
SensioLabsInsight Issues & Reporting
Plugins de PHPStorm
.gitignore de Symfony 2
Versionning de PHPStorm
Tips & Tricks
Liste des commandes
Débuger une requete SQL
Débuger une requete DQL
Les fonctions en Twig
Débuger du YAML
Débuger du Twig
Lancer le serveur en production
Débuger les entités
Lire les CHANGELOG
Explorer les classes
Class Debug pour les lourds objets
Les Meilleurs Bundles
Be curious not judgmental ...
Walter Whiteman
Resume presentation
Pourquoi j'ai choisi Symfony 2 ... ?
Made with Slides.com
BESbswy
BESbswy
BESbswy
BESbswy