Tunis 2019 27 AVRIL

Planning

27 avr. 2019

  Track A
08:00
09:00
Accueil et retrait des badges
09:00
09:15
Mot de bienvenue
09:15
09:55
Keynote
Fabien Potencier
10:00
10:40
Comment faire le bon choix entre GraphQL et REST ? Pourquoi pas gRPC ?
Barhoumi Ramzi
10:40
11:10
Pause ☕ đŸ„
11:10
11:50
Le TDD dans la vraie vie avec Panther
Adrien Lucas
11:55
12:15
ERP Gestion de transport
ameni kooli
12:15
14:00
DĂ©jeuner
14:00
14:40
[CAS REEL] RĂ©alisation d'un POC et son Industrialisation avec Symfony
Selim Masrouki
14:45
15:25
Symfony HttpClient, quoi d'autre?
Nicolas Grekas
15:25
15:55
Pause ☕ đŸ„
15:55
16:35
Exploiter le composant ExpressionLanguage pour générer des exports à la volée
Mehdi Chibouni
16:40
17:00
Plongée dans l'injection de dépendances de Symfony
Titouan Galopin
17:05
17:45
Des apps Symfony sous stéroïdes grùce à Vue.js, Mercure et Panther !
KĂ©vin Dunglas
17:45
18:00
Mot de clĂŽture

Keynote

Fabien Potencier - français - Track A - 27/04/2019, 09:15

Keynote

Comment faire le bon choix entre GraphQL et REST ? Pourquoi pas gRPC ?

Barhoumi Ramzi - français - Track A - 27/04/2019, 10:00

La présentation comportera les sujets suivants:

  • Rappel REST
  • BrĂšve introduction Ă  GraphQL
  • ImplĂ©mentations REST avec Symfony 4
  • ImplĂ©mentation GraphQL avec Symfony 4
  • Benchmarking REST vs GraphQL
  • Comment choisir entre REST et GraphQL
  • introduction Ă  gRPC/Protocol buffers/HTTP2

Le TDD dans la vraie vie avec Panther

Adrien Lucas - français - Track A - 27/04/2019, 11:10

Panther est un tout nouveau composant Symfony dont l'objectif est de vous simplifier l'écriture des tests d'intégrations et des tests end-to-end !

Dans ce talk vous dĂ©couvrirez I) qu'est-ce que la pyramide des tests et en quoi Panther est l'outil idĂ©al pour homogĂ©nĂ©iser sa suite de tests; II) en quoi consiste la pratique du TDD et comment doit-elle ĂȘtre adaptĂ© pour correspondre aux problĂ©matiques d'une application web; III) Ă  quoi ressemblent ces pratiques sur un projet rĂ©el et quelles charges leur mise en place peut-elle coĂ»ter; IV) quelles pistes peuvent ĂȘtre explorĂ©es pour amĂ©liorer nos suites de tests et bĂ©nĂ©ficier de toujours plus d'assurance qualitĂ©.

ERP Gestion de transport

ameni kooli - français - Track A - 27/04/2019, 11:55

Présentation d'un projet de réalisation d'un ERP pour le compte du client Log-Xpress, spécialiste dans la logistique et transport aérien et maritime sur la base du framework Symfony.

[CAS REEL] RĂ©alisation d'un POC et son Industrialisation avec Symfony

Selim Masrouki - français - Track A - 27/04/2019, 14:00

Mise en place d'une stratĂ©gie BIM (Building Information Modeling), ou bien, le traitement de la maquette numĂ©rique. Ce processus concerne l’acquisition, la collecte et le traitement de donnĂ©es sous forme de maquette numĂ©rique dĂ©crivant l’environnement existant d’un projet, sa conception et son exĂ©cution.

Pour la réalisation de cet objectif, un POC a été développé sur PHP/Symfony.

  • RĂ©alisation du POC: Application d'une approche itĂ©rative avec des itĂ©rations courtes de 2 semaines (Trajectoire d'exploration, afin de faire la preuve du concept et de sa valeur pour l'entreprise) - AdĂ©quation du Framework Symfony au itĂ©rations courtes
  • Description technique de l'ETL de traitement de la maquette numĂ©rique: Bus de messages RabbitMQ, Gisement de donnĂ©es MongoDB, ...
  • Industrialisation de la plateforme: comment passer du POC Ă  la vie rĂ©elle ?

PHP 7.2, Symfony 4.1, Docker ...

Symfony HttpClient, quoi d'autre?

Nicolas Grekas - français - Track A - 27/04/2019, 14:45

Avez-vous entendu parler de Symfony HttpClient ? Ce nouveau composant sera publiĂ© fin mai avec Symfony 4.3. Que diriez-vous de l'expĂ©rimenter en lançant "composer require symfony/http-client" ? C'est ce que je vous propose de faire lors de cette confĂ©rence. Nous passerons en revue ses fonctionnalitĂ©s et ses caractĂ©ristiques essentielles. Suffisant pour remplacer Guzzle et consorts ? À n'en pas douter en ce qui me concerne :)

Exploiter le composant ExpressionLanguage pour générer des exports à la volée

Mehdi Chibouni - français - Track A - 27/04/2019, 15:55

Exporter des donnĂ©es est une tĂąche qui est souvent recurrente. Dans ce talk, nous allons exploiter le composant Symfony ExpressionLanguage pour crĂ©er dynamiquement des requĂȘtes Doctrine. Nous allons Ă©galement profiter de cette occasion pour montrer comment on peut facilement crĂ©er un systĂšme de plugins avec Symfony

Plongée dans l'injection de dépendances de Symfony

Titouan Galopin - français - Track A - 27/04/2019, 16:40

L'injection de dépendances est probablement l'élément le plus important dans l'architecture d'une application Symfony. En fournissant un moyen souple et efficace de construire des architectures suivant les principes SOLID, ce modÚle de conception constitue un environnement idéal pour vos projets.

Cependant, l'injection de dépendance n'est qu'un modÚle : il faut une implémentation. Le composant DependencyInjection de Symfony est pleine de fonctionnalités utiles et intéressantes, qui étendent les concepts de base de l'injection de dépendances. Partons à la découverte de ce composant et de son intégration dans le framework, pour mieux comprendre les concepts cachés derriÚre le code.

Des apps Symfony sous stéroïdes grùce à Vue.js, Mercure et Panther !

KĂ©vin Dunglas - français - Track A - 27/04/2019, 17:05

Grùce aux nouvelles capacités de la plateforme web (web components, progressive web apps...) et à la montée en puissance des bibliothÚques et frameworks JS tels que Vue, React et Angular, quasiment toutes les nouvelles apps Symfony doivent aussi tirer partie de l'écosystÚme frontend. Symfony 4 contient de nombreux outils rendant trÚs facile d'intégrer les outils JS moderne dans le framework.

Au cours de ce talk nous découvrirons comment utiliser ensembles VueJS (l'un des frameworks les plus populaires en JavaScript), API Platform (l'outil de référence pour la création d'API web modernes), Panther (l'outil de test E2E de Symfony qui est capable d'exécuter le JavaScript afin de progressivement améliorer nos applications grùce à JavaScript.

Finalement, nous découvrirons comment l'intégration du protocole Mercure dans Symfony permet de "pusher" des mises à jour de données réel vers les clients.