Enviar pesquisa
Carregar
Afup 2015 zf3 le futur de php
•
Transferir como PPTX, PDF
•
0 gostou
•
2,195 visualizações
S
Sophie Beaupuis
Seguir
Etat des lieux sur ZF3
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 27
Baixar agora
Recomendados
Zf2++ Quelques idées sur l'avenir proche de ZF2
Zf2++ Quelques idées sur l'avenir proche de ZF2
Sophie Beaupuis
Introduction à Zend Framework 2
Introduction à Zend Framework 2
Mickael Perraud
Click and deploy - Continuous delivery avec Zend Server et Jenknins
Click and deploy - Continuous delivery avec Zend Server et Jenknins
Sophie Beaupuis
Solution pour un Réseau Social d'Entreprise (RSE)
Solution pour un Réseau Social d'Entreprise (RSE)
neuros
Photos finalistes-au-concours-du-national-geographic-2012
Photos finalistes-au-concours-du-national-geographic-2012
sultan126
Xl
Xl
Roser Guiteras
Etape 1 : définition du projet
Etape 1 : définition du projet
cdicondorcet02
Nouveautés Science-Fiction / Fantastique - Juin 2014
Nouveautés Science-Fiction / Fantastique - Juin 2014
MediathequedePrivas
Recomendados
Zf2++ Quelques idées sur l'avenir proche de ZF2
Zf2++ Quelques idées sur l'avenir proche de ZF2
Sophie Beaupuis
Introduction à Zend Framework 2
Introduction à Zend Framework 2
Mickael Perraud
Click and deploy - Continuous delivery avec Zend Server et Jenknins
Click and deploy - Continuous delivery avec Zend Server et Jenknins
Sophie Beaupuis
Solution pour un Réseau Social d'Entreprise (RSE)
Solution pour un Réseau Social d'Entreprise (RSE)
neuros
Photos finalistes-au-concours-du-national-geographic-2012
Photos finalistes-au-concours-du-national-geographic-2012
sultan126
Xl
Xl
Roser Guiteras
Etape 1 : définition du projet
Etape 1 : définition du projet
cdicondorcet02
Nouveautés Science-Fiction / Fantastique - Juin 2014
Nouveautés Science-Fiction / Fantastique - Juin 2014
MediathequedePrivas
Temps
Temps
Roser Guiteras
Xfastfood
Xfastfood
laurence allard
Place du tertre
Place du tertre
turova1858
Educacion hombre
Educacion hombre
Fabián Inostroza
Rapport annuel 2009 2010
Rapport annuel 2009 2010
Ressources Entreprises
Les roses recordades
Les roses recordades
Roser Guiteras
El meu poble i jo
El meu poble i jo
Roser Guiteras
Instal.lació M.Petra
Instal.lació M.Petra
juan_jesus verdeguer
Logo perfecto
Logo perfecto
juan_jesus verdeguer
Transport
Transport
razavi1234
Les métiers de l'internet - Référentiel APEC 2012
Les métiers de l'internet - Référentiel APEC 2012
polenumerique33
Estrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepoint
Daniel Laco
French tech-grenoble
French tech-grenoble
Régis Gautheron
Dejeuner Gratte Ciel 1930 A
Dejeuner Gratte Ciel 1930 A
Alain alias iPapy BAYOD
Gestion fortune 11 2014
Gestion fortune 11 2014
linkinslide
Diapo milgram v3.0
Diapo milgram v3.0
Jules Parent
Cadre stratégique fédéral pour des marchés publics durables
Cadre stratégique fédéral pour des marchés publics durables
Belgian Federal Institute for Sustainable Development
Crear una cuenta en gmail
Crear una cuenta en gmail
evgutierrez
La newsletter de mgrh 18
La newsletter de mgrh 18
CABINET MGRH
Compte rendu du Conseil Municipal du 19 décembre 2014
Compte rendu du Conseil Municipal du 19 décembre 2014
Lepetitmerycien
Utiliser le Zend Framework avec Symfony
Utiliser le Zend Framework avec Symfony
Xavier Gorse
Zf2 ce-qui-va-changer
Zf2 ce-qui-va-changer
Mickael Perraud
Mais conteúdo relacionado
Destaque
Temps
Temps
Roser Guiteras
Xfastfood
Xfastfood
laurence allard
Place du tertre
Place du tertre
turova1858
Educacion hombre
Educacion hombre
Fabián Inostroza
Rapport annuel 2009 2010
Rapport annuel 2009 2010
Ressources Entreprises
Les roses recordades
Les roses recordades
Roser Guiteras
El meu poble i jo
El meu poble i jo
Roser Guiteras
Instal.lació M.Petra
Instal.lació M.Petra
juan_jesus verdeguer
Logo perfecto
Logo perfecto
juan_jesus verdeguer
Transport
Transport
razavi1234
Les métiers de l'internet - Référentiel APEC 2012
Les métiers de l'internet - Référentiel APEC 2012
polenumerique33
Estrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepoint
Daniel Laco
French tech-grenoble
French tech-grenoble
Régis Gautheron
Dejeuner Gratte Ciel 1930 A
Dejeuner Gratte Ciel 1930 A
Alain alias iPapy BAYOD
Gestion fortune 11 2014
Gestion fortune 11 2014
linkinslide
Diapo milgram v3.0
Diapo milgram v3.0
Jules Parent
Cadre stratégique fédéral pour des marchés publics durables
Cadre stratégique fédéral pour des marchés publics durables
Belgian Federal Institute for Sustainable Development
Crear una cuenta en gmail
Crear una cuenta en gmail
evgutierrez
La newsletter de mgrh 18
La newsletter de mgrh 18
CABINET MGRH
Compte rendu du Conseil Municipal du 19 décembre 2014
Compte rendu du Conseil Municipal du 19 décembre 2014
Lepetitmerycien
Destaque
(20)
Temps
Temps
Xfastfood
Xfastfood
Place du tertre
Place du tertre
Educacion hombre
Educacion hombre
Rapport annuel 2009 2010
Rapport annuel 2009 2010
Les roses recordades
Les roses recordades
El meu poble i jo
El meu poble i jo
Instal.lació M.Petra
Instal.lació M.Petra
Logo perfecto
Logo perfecto
Transport
Transport
Les métiers de l'internet - Référentiel APEC 2012
Les métiers de l'internet - Référentiel APEC 2012
Estrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepoint
French tech-grenoble
French tech-grenoble
Dejeuner Gratte Ciel 1930 A
Dejeuner Gratte Ciel 1930 A
Gestion fortune 11 2014
Gestion fortune 11 2014
Diapo milgram v3.0
Diapo milgram v3.0
Cadre stratégique fédéral pour des marchés publics durables
Cadre stratégique fédéral pour des marchés publics durables
Crear una cuenta en gmail
Crear una cuenta en gmail
La newsletter de mgrh 18
La newsletter de mgrh 18
Compte rendu du Conseil Municipal du 19 décembre 2014
Compte rendu du Conseil Municipal du 19 décembre 2014
Semelhante a Afup 2015 zf3 le futur de php
Utiliser le Zend Framework avec Symfony
Utiliser le Zend Framework avec Symfony
Xavier Gorse
Zf2 ce-qui-va-changer
Zf2 ce-qui-va-changer
Mickael Perraud
Architecture PHP 3 tier avec Zend en backend de Drupal
Architecture PHP 3 tier avec Zend en backend de Drupal
Thomas Delerm
Réutilisabilité du code PHP
Réutilisabilité du code PHP
Nicolas Le Nardou
Symfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiques
Noel GUILBERT
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Olivier DASINI
Soutenance Zend Framework vs Symfony
Soutenance Zend Framework vs Symfony
Vincent Composieux
Plateforme De DéVeloppement En Php5 (Zend + Doctrine)
Plateforme De DéVeloppement En Php5 (Zend + Doctrine)
cornnery
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
OpenNebula Project
20111220 lyon jug-packaging-natif
20111220 lyon jug-packaging-natif
Henri Gomez
Qualité logicielle
Qualité logicielle
cyrilgandon
S43 passer à php 7 sous IBM i
S43 passer à php 7 sous IBM i
Gautier DUMAS
20120110 paris jug-packaging-natif
20120110 paris jug-packaging-natif
Henri Gomez
PHPTour-2011-PHP_Extensions
PHPTour-2011-PHP_Extensions
julien pauli
Les architectures du Software Defined Storage
Les architectures du Software Defined Storage
RSD
Build automatique et distribution OTA avec Xcode 4.x et Jenkins
Build automatique et distribution OTA avec Xcode 4.x et Jenkins
CocoaHeads France
Open Source et Microsoft Azure, rêve ou réalité ?
Open Source et Microsoft Azure, rêve ou réalité ?
Microsoft
Internationaliser un formulaire zend form
Internationaliser un formulaire zend form
Geozend
mini projet
mini projet
Basma Ghenimi
20100221 my phingtool - blog
20100221 my phingtool - blog
PHPPRO
Semelhante a Afup 2015 zf3 le futur de php
(20)
Utiliser le Zend Framework avec Symfony
Utiliser le Zend Framework avec Symfony
Zf2 ce-qui-va-changer
Zf2 ce-qui-va-changer
Architecture PHP 3 tier avec Zend en backend de Drupal
Architecture PHP 3 tier avec Zend en backend de Drupal
Réutilisabilité du code PHP
Réutilisabilité du code PHP
Symfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiques
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Soutenance Zend Framework vs Symfony
Soutenance Zend Framework vs Symfony
Plateforme De DéVeloppement En Php5 (Zend + Doctrine)
Plateforme De DéVeloppement En Php5 (Zend + Doctrine)
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
20111220 lyon jug-packaging-natif
20111220 lyon jug-packaging-natif
Qualité logicielle
Qualité logicielle
S43 passer à php 7 sous IBM i
S43 passer à php 7 sous IBM i
20120110 paris jug-packaging-natif
20120110 paris jug-packaging-natif
PHPTour-2011-PHP_Extensions
PHPTour-2011-PHP_Extensions
Les architectures du Software Defined Storage
Les architectures du Software Defined Storage
Build automatique et distribution OTA avec Xcode 4.x et Jenkins
Build automatique et distribution OTA avec Xcode 4.x et Jenkins
Open Source et Microsoft Azure, rêve ou réalité ?
Open Source et Microsoft Azure, rêve ou réalité ?
Internationaliser un formulaire zend form
Internationaliser un formulaire zend form
mini projet
mini projet
20100221 my phingtool - blog
20100221 my phingtool - blog
Afup 2015 zf3 le futur de php
1.
Confidential - ©
All rights reserved. Zend Technologies, Inc.1 Confidential - © All rights reserved. Zend Technologies, Inc. Zend Framework 3 Le futur de PHP
2.
Confidential - ©
All rights reserved. Zend Technologies, Inc.2 Twitter @so_php_ie Paris Zend Framework Meet’up http://www.meetup.com/fr/Paris-Zend-Framework-Meetup/ Moi, moi et moi... Twitter @venusZeDog
3.
Confidential - ©
All rights reserved. Zend Technologies, Inc.3 La nouvelle version : ZF3
4.
Confidential - ©
All rights reserved. Zend Technologies, Inc.4 Objectifs de ZF3 • Séparation du framework en composants réutilisables • Performances • Facilité d’utilisation • Centré sur PSR7 et les “middlewares”
5.
Confidential - ©
All rights reserved. Zend Technologies, Inc.5 Séparation du framework en différents composants Réalisé depuis ZF2.5: • Chaque composant possède sont propre repository • Chaque élément est versionné de façon indépendante • Le package du framework devient un méta-package faisant références à différentes versions des composants. But • Laissé au composant la possibilité d’évoluer à son rythme • Faciliter la répartition des responsabilités des source managers.
6.
Confidential - ©
All rights reserved. Zend Technologies, Inc.6 Qu’est-ce qui change avec ZF2 ? • Le gestionnaire de services • Le gestionnaire d’évènements • Le composant MVC en conséquence des deux précédentes modifications
7.
Confidential - ©
All rights reserved. Zend Technologies, Inc.7 Le gestionnaire de services
8.
Confidential - ©
All rights reserved. Zend Technologies, Inc.8 Le gestionnaire de service • Désormais compatible avec container-interop • 4 x plus rapide • Reste compatible avec la version ZF2 pour la plus grande partie • Disparition du peering entre gestionnaires • Suppression des noms canoniques
9.
Confidential - ©
All rights reserved. Zend Technologies, Inc.9 Le gestionnaire de service - container interop C’est un projet qui propose une interface générale pour tous les containers d’injection en PHP. Pas encadré par le FIG pour le moment. namespace InteropContainer; interface ContainerInterface { public function get($id); public function has($id); }
10.
Confidential - ©
All rights reserved. Zend Technologies, Inc.10 Le gestionnaire de service - nouvelle interface pour les factories interface FactoryInterface { public function __invoke(ContainerInterface $container, $requestedName, array $options = null); On peut donc utiliser désormais la même factory pour différents services car le nom du service est passé en paramètre.
11.
Confidential - ©
All rights reserved. Zend Technologies, Inc.11 Le gestionnaire d’évènements
12.
Confidential - ©
All rights reserved. Zend Technologies, Inc.12 Gestionnaire d’évènements • Au moins 4x plus rapide • Enfin débarassé du polymorphisme de paramètres pour trigger()
13.
Confidential - ©
All rights reserved. Zend Technologies, Inc.13 Gestionnaire d’évènements - Adieu “trigger” pourri... Emettre une notification à partir de ses éléments : public function trigger($eventName, $target = null, $argv = []) Si on souhaite ajouter une fonction de “callback” de gestion de propagation : public function triggerUntil(callable $callback, $eventName, $target = null, $argv = []) Emmettre une notification déjà instanciée: public function triggerEvent(EventInterface $event) Avec une fonction de callback : public function triggerEventUntil(callable $callback, EventInterface $event)
14.
Confidential - ©
All rights reserved. Zend Technologies, Inc.14 Gestionnaire d’évènements - Attachement des aggrégats Désormais impossible d’attacher un aggregat à travers le gestionnaire d’évènement: $eventManager->attachAggregate(ListenerAggregate $aggregate) On doit désormais utiliser : $aggregate->attach(EventManager $events)
15.
Confidential - ©
All rights reserved. Zend Technologies, Inc.15 Le modèle MVC
16.
Confidential - ©
All rights reserved. Zend Technologies, Inc.16 MCV - Ce qui change • Conséquences des changements sur le gestionnaire de services • Conséquences des changements sur le gestionnaire d’évènements • En gros… pas de rupture de compatbilité. • NOUVEAU : le support des “middlewares”.
17.
Confidential - ©
All rights reserved. Zend Technologies, Inc.17 Middlewares ? Vous avez dit middlewares ?
18.
Confidential - ©
All rights reserved. Zend Technologies, Inc.18 Kezako ? • Un middleware est un élément de code qui traite une requête et renvoie une réponse. • les middlewares sont généralement utilisés en “couches” :
19.
Confidential - ©
All rights reserved. Zend Technologies, Inc.19 Que vient faire Zend Framework là dedans ? On peut appeler un middleware en remplacement d’un controller. Il suffit de le définir dans le router: 'mwRoute' => [ 'type' => 'literal', 'options' => [ 'route' => '/myMiddleWare', 'defaults' => [ 'middleware' => myMiddleWare::class, ... ], ], ],
20.
Confidential - ©
All rights reserved. Zend Technologies, Inc.20 Comment coder un middleware dans ZF ? • C’est un callable quelconque – qui reçoit en entrée un requête compatible avec PSR-7 – qui renvoie un réponse compatible avec PSR-7 • Ce middleware n’est donc pas forcément une implémentation “Zend”. Il suffit qu’il soit compatible avec la norme PSR-7.
21.
Confidential - ©
All rights reserved. Zend Technologies, Inc.21 PSR-7 middleware avec Zend
22.
Confidential - ©
All rights reserved. Zend Technologies, Inc.22 le composant zend-diactoros • implémentation Zend de la norme PSR-7 • propose des classes de requêtes et de réponses suivant la norme PSR-7
23.
Confidential - ©
All rights reserved. Zend Technologies, Inc.23 le composant zend-strategility • Implemente les middlewares selon la norme PSR-7 • un middleware est une fonction qui possède en paramètres – une requête PSR-7 – une réponse PSR-7 $pipe = new MiddlewarePipe(); $server = Server::createServer($pipe, $_SERVER, $_GET, $_POST, $_COOKIE, $_FILES); $pipe->pipe('/bidule',function($req, $rep){ $rep->write('hop'); return $rep; }); $server->listen();
24.
Confidential - ©
All rights reserved. Zend Technologies, Inc.24 Zend Expressive
25.
Confidential - ©
All rights reserved. Zend Technologies, Inc.25 L’objectif • Créer un micro-framework en associant – Un middleware compatible PSR-7 (Zend Stratigility) – Un router – Un container d’injection • en favorisant l’interopérabilité – PSR7 – Container Interop..
26.
Confidential - ©
All rights reserved. Zend Technologies, Inc.26 Un tout petit exemple • Avec Composer • On choisit les composants
27.
Confidential - ©
All rights reserved. Zend Technologies, Inc.27 Merci !
Baixar agora