Formations

Développement d'API avec API Platform

Avatar of Kévin Dunglas Kévin Dunglas

lundi 21 septembre 2020
09:00

API Plaftorm est devenu un cadre très populaire pour construire des projets Web avancés et modernes pilotés par API. Cela inclut: - un composant serveur super puissant basé sur Symfony pour créer des API web hypermédia et GraphQL; - un générateur d'applications Web progressives (ReactJS, Vue. js) et d'applications mobiles natives (React Native); - une interface d'administration ReactJS (ReactJS + admin sur repos).

Après une vue d'ensemble des modèles et formats modernes de l'API (REST, Swagger, Hypermedia, HATEOAS, JSON-LD, Hydra, Schema.org, GraphQL...), nous apprendrons comment utiliser et étendre les fonctionnalités les plus populaires du composant : documentation Swagger, pagination, validation, tri, filtrage, authentification, autorisation, négociation de contenu, génération de modèles de données à l'aide du vocabulaire Schema.org. Enfin, nous découvrirons à quel point il est facile d'utiliser la boîte à outils côté client (JavaScript).

Maîtriser la POO & les Design Patterns 1/2

Avatar of Titouan Galopin Titouan Galopin

lundi 21 septembre 2020
09:00

La Programmation Orientée Object (POO) va au-delà de la conception de classes et d'interfaces. Elle inclut une grande variété de concepts tels que les objets, les entités, les "value objects", les services, les modèles de conception, les principes SOLID, la calisthenie, le couplage, etc. Maîtriser la POO nécessite souvent plusieurs années d'expérience. Cet atelier vous aidera à mieux comprendre tous ces concepts pour écrire un code orienté objet plus maintenable, plus robuste et plus testable. Vous découvrirez également les techniques permettant de réduire la complexité de votre code et de rendre vos classes plus spécifiques et donc plus simples. Vous apprendrez également à reconnaître et à exploiter la puissance des modèles de conception (fabrique, adaptateur, composite, décorateur, médiateur, stratégie, etc.)

Symfony 5: the fast track 1/2

Avatar of Nicolas Grekas Nicolas Grekas

lundi 21 septembre 2020
09:00

Cette formation est issue du livre "Symfony 5: The Fast Track" de Fabien Potencier. Dispensée sur deux jours consécutifs, elle vous apprendra à construire une application Symfony de A à Z en utilisant les nouvelles pratiques et les nouveaux composants disponibles depuis peu. Pour celles et ceux débutant en Symfony, cette formation est l'occasion d'un panorama de capacités qu'il vous revient d'exploiter. Pour les plus confirmés, le cycle de développement de Symfony 4 change la donne. Cette formation leurs sera utile pour rafraichir leurs connaissances et gagner en efficacité au jour le jour.

Nous construirons une application dotée de toute l'infrastructure des apps modernes : base de données, serveur de cache applicatif et HTTP, bus de messages pour traitements en tâche de fond, API et SPA, etc. Pour se rapprocher d'un projet réel, le développement s'effectuera sur un double environnement prod/dev basés sur SymfonyCloud/Docker respectivement. Nous partirons des basiques avec l'installation d'une application squelette, la création d'un modèle de données et d'un "backoffice", puis nous ajouterons des écrans pour les utilisateurs, un système de sécurité pour cloisonner les droits, une API pour permettre l'interaction via une SPA. Nous enrichirons les données de règles métier pour envoyer des notifications, envoyer des emails, gérer l'internationalisation, redimensionner des images, gérer un workflow de publication, etc. Enfin, nous optimiserons l'application pour la production à travers les caches HTTP et applicatifs, à travers la gestion des assets (JS/CSS/images) et des secrets. Pour sécuriser chaque étape, nous écrirons des tests chargés de garantir les non-régressions.

Au menu : Flex, Mailer, Notifier, Workflow, Messenger, API Platform, HttpClient, String, Webpack Encore, etc.

Traitements asynchrones avec Symfony Messenger

Avatar of Samuel ROZE Samuel ROZE

mardi 22 septembre 2020
09:00

Le composant Messenger de Symfony introduit la notion de “message bus” et de traitement asynchrone de ces messages, via un queue comme RabbitMq, Redis ou bien même via une simple base de données.

Dans ce workshop découpé en 8 grand thèmes, vous allez d'abord découvrir (1) comment utiliser Messenger pour découpler vos applications, (2) le système de routage vers des “transports” asynchrones and (3) les notions de “middleware” et de “stamps”, qui vous permettront de comprendre comment fonctionne le coeur du composant et de le personnaliser a vos souhaits.

Nous verrons ensuite en détails (4) comment configurer les transports, (5) le système de sérialisation des messages, (6) la gestion des erreurs, (7) les événements du worker Messenger et (8) comment écrire vos propres transports.