Mieux Comprendre les PSR

Mieux Comprendre les PSR

My talk about PSR with the AFUP Bordeaux

8d26b5d9c10abb80a42e6ba9dfa47dfa?s=128

Perussel Nicolas

June 19, 2017
Tweet

Transcript

  1. Mieux comprendre les PSR PHP Standards Recommandations AFUP BORDEAUX 20

    Juin 2017 | Node Bordeaux
  2. Qui suis-je ? Nicolas Perussel 33 ans 11 ans d’expérience

    Twitter : @mamoot64 Github : acidline mamoot.fr
  3. PHP-FIG : PHP Framework Interoperability Group Crée en Mai 2009,

    au PHP[TEK] de Chicago « Réunion informelle » initialisée par Travis Swicegood (PEAR) Sous le nom : PHP Standards Group  PSR 0 : autoloading standard “By having official representatives from PEAR, Agavi, Cake, Solar, and Zend Framework and unofficial representation from Phing and Symfony, we had a good cross section.”
  4. PHP-FIG : PHP Framework Interoperability Group 2 ans d’absence puis

    en 2011 :  Changement de nom  PSR 1 (basic coding style), PSR 2 (coding style), PSR 3 (logger)
  5. 2013  Sondage en interne : orientation Spécification « soft

    » ou « hard »  Toujours de soucis d’organisation (Qui ? Quoi ? Comment ?)  Débat si intervention « personnes » ou « projets »  vote en Avril 2013  Règlement opaque, pauvre (ByLaws)  Question de la « propriété » d’une spécification : PSR 4 (Autoloading), PSR 6 (Cache), PSR 7 (HTTP Message) Phil Sturgeon Larry Garfield Juillet 2013  rédaction et amélioration des « ByLaws »
  6. Structure du groupe Vers un FIG 3.0 ? Membres (Juin

    2017) CakePHP | Composer | concrete5 | Contao Open Source CMS | Drupal | eZ Publish Horde | IBM i Toolkit | Icicle | Jackalope | Joomla | Lithium | Magento | PEAR | Phalcon | Phing | phpBB | phpDocumentor | PHPixie | Pimcore | PPI Framework | PrestaShop | PyroCMS | ReactPHP | Revive Adserver | SculpinSilver | Stripe | Slim Stash | Stormpath PHP SDK SugarCRM | Symfony | Neos and Flow | Wikibase and Semantic MediaWiki | Yii framework | Zend Framework 2 | Zikula
  7. Procédure de création http://www.php-fig.org/bylaws/psr-workflow/ VOTE ACCEPTANCE MEMBRES ACCEPTATION DE LA

    PSR IDEE Editeur et coordinateur « random » + sponsor VOTE DES MEMBRES 1, -1, 0 DRAFT DE LA PSR REVIEW QUORUM + MAJORITE (14 jours)
  8. Impact au quotidien  PSR-0 a permis l’établissement de COMPOSER

     PSR-1 and PSR-2 appliqué à tous les IDE et dans beaucoup de projets PHP  PSR-3 logger  65 831 479 installations (via Packagist)  PSR-6 cache  5 914 661 installations (via Packagist)  PSR-7 Http Message  28 625 535 installation (src Packagist)  The PSR-7 : mise en place dans la majorité des framework -> middleware
  9. PSR Accepted http://www.php-fig.org/psr/ PHP FIG site is not update

  10. PSR Draft http://www.php-fig.org/psr/

  11. PSR Deprecated http://www.php-fig.org/psr/

  12. PSR : PSR-3 Un exemple pour bien comprendre : LoggerInterface

    J’ai besoin de 3 / 4 volontaires
  13. PSR : PSR-7 & PSR-15 HTTP MESSAGE + MIDDLEWARE Converting

    HttpFoundation Request to a Zend Diactoros Server Request Implementing PSR-7 Psr\Http\Message\ServerRequestInterface Convert HttpFoundation Response to a Zend Diactoros Response Implementing PSR-7 Psr\Http\Message\ResponseInterface Source : https://medium.com/@Inviqa/an-introduction-to-psr-7-in-symfony-d723c00385b
  14. PSR : PSR-7 & PSR-15 HTTP MESSAGE + MIDDLEWARE Un

    middleware est quelque chose qui prend une requête et retourne une réponse. Mathieu Napoli
  15. PSR : PSR-7 & PSR-15 HTTP MESSAGE + MIDDLEWARE Principe

    de couche « oignon » Notion de « Pipe »
  16. PSR : PSR-7 & PSR-15 MIDDLEWARE DISPOS https://github.com/oscarotero/psr7-middlewares

  17. Merci de votre écoute http://www.php-fig.org/ https://www.sitepoint.com/the-past-present-and-future-of-the-php-fig/ http://mnapoli.fr/presentations/forumphp-middlewares/#1 https://medium.com/@Inviqa/an-introduction-to-psr-7-in-symfony-d723c00385b https://github.com/oscarotero/psr7-middlewares Sources

    :