Formation API Platform

0,0 rating
Logo pour la Formation API Platform

2100€

1890€ HT / personne

3 jours (21 heures)

Paris
Il ne reste que quelques places
Disponible aussi en intra-entreprise pour former votre équipe.

Présentation

En informatique, une interface de programmation d’application est un ensemble normalisé de classes, de méthodes ou de fonctions qui sert de façade par laquelle un logiciel offre des services à d’autres logiciels. Elle est offerte par une bibliothèque logicielle ou un service web, le plus souvent accompagnée d’une description qui spécifie comment des programmes consommateurs peuvent se servir des fonctionnalités du programme fournisseur.

Dans l’industrie contemporaine du logiciel, les applications informatiques se servent de nombreuses interfaces de programmation, la programmation se fait en réutilisant des briques de fonctionnalités fournies par des logiciels tiers.
Cette construction par assemblage nécessite pour le programmeur de connaître la manière d’interagir avec les autres logiciels, qui dépend de leur interface de programmation.
Le programmeur n’a pas besoin de connaître les détails de la logique interne du logiciel tiers, et celle-ci n’est généralement pas documentée par le fournisseur.

Des logiciels tels que les systèmes d’exploitation, les systèmes de gestion de base de données, les langages de programmation, ou les serveurs d’applications comportent une interface de programmation.

 

Objectifs

  • Comprendre les enjeux techniques, fonctionnels et métier des APIs
  • Maitriser la consommation de votre API et son ouverture aux développeurs
  • Savoir déployer et maintenir une stratégie d’API durable.

 

Public visé

  • DSI, Architectes, Développeurs, Administrateurs, Analystes d’affaires.

 

Pré-requis

  • Posséder une culture générale en architecture des systèmes d’information et connaître le protocole applicatif HTTP.

Programme

 

Créez des API puissantes en toute simplicité

  • Prise en main de la plate-forme API
    • API Hypermédia et GraphQL
    • Admin et Web App Progressif
    • Installation du framework
    • Apportez votre propre modèle
    • Validation des données
    • Ajout de la prise en charge de GraphQL
    • Une application Web progressive React/Redux
    • Autres caractéristiques
  • Test et spécification de l’API
    • Création de montages de données
    • Rédaction des tests fonctionnels
    • Écriture des tests unitaires
  • Débogage
    • Ajouter une étape de développement au Dockerfile
    • Configurer Xdebug avec Docker Compose Override
    • Dépannage et dépannage

 

Composante de l’IPA

  • La bibliothèque centrale de la plate-forme API
    • Caractéristiques
    • Autres ressources
  • Pour commencer
    • Installation du noyau de plate-forme de l’API
    • Avant de lire cette documentation
    • Cartographie des entités
  • Opérations
    • Activation et désactivation des opérations
    • Configuration des opérations
    • Sous-ressources
    • Création d’opérations et de contrôleurs personnalisés
  • Filtres
    • Filtres ODM Doctrine ORM et MongoDB
    • Filtres de recherche élastique
    • Filtres sérialiseurs
    • Création de filtres personnalisés
    • Annotation d’ApiFilter
  • Le processus de sérialisation
    • Processus global
    • Sérialiseurs disponibles
    • Le contexte, les groupes et les relations de la sérialisation
    • Utilisation des groupes de sérialisation
    • Utilisation des groupes de sérialisation par opération
    • Modification dynamique du contexte de sérialisation
    • Modification du contexte d’individualisation par poste
    • Conversion des noms
    • Décorer un sérialisateur et ajouter des données supplémentaires
    • Cas de l’identificateur d’entité
    • Intégrer le contexte JSON-LD
    • Relation de collection
  • Validation
    • Validation des données soumises
    • Utilisation des groupes de validation
    • Utilisation des groupes de validation dans les opérations
    • Groupes de validation dynamique
    • Niveaux d’erreur et sérialisation de la charge utile
    • Validation des relations de recouvrement
    • Vocabulaire ouvert généré à partir des métadonnées de validation
  • Sécurité
    • Configuration du message de contrôle d’accès
  • Fournisseurs de données
    • Fournisseur de données de collecte personnalisées
    • Fournisseur de données d’article personnalisé
    • Injection du sérialiseur dans un fournisseur de données d’élément
    • Extensions d’injection
  • Pagination
    • Désactiver la pagination
    • Modification du nombre d’éléments par page
    • Modifier le nombre maximum d’éléments par page
    • Pagination partielle
    • Contrôle du comportement de l’ORM Paginator de Doctrine
    • Action du contrôleur personnalisé
  • Le système d’événements
    • Écouteuses et auditeurs d’événements intégrés
    • Écouteuses d’événements personnalisés
  • Négociation du contenu
    • Activation de plusieurs formats
    • Activation de formats supplémentaires sur une ressource/opération spécifique
    • Enregistrement d’un sérialiseur personnalisé
    • Écriture d’un normalisateur personnalisé
  • Performances et cache
    • Activation du système d’invalidation de cache HTTP intégré
    • Définition d’en-têtes de cache HTTP personnalisés
    • Activation du cache de métadonnées
    • Utilisation de PPM (PHP-PM)
    • Requêtes et index de doctrine
    • Profilage avec Blackfire.io
  • Prolongations
    • Doctrine personnalisée ORM Extension
    • Doctrine personnalisée MongoDB ODM Extension
    • Extension de recherche d’élasticité sur mesure
  • Support des spécifications OpenAPI (anciennement Swagger)
    • Utilisation de la commande OpenAPI
    • Remplacement de la spécification OpenAPI
    • Utilisation des contextes OpenAPI et Swagger
    • Modification du nom d’une définition
    • Modification des opérations dans la documentation OpenAPI
    • Changement de l’emplacement de l’interface utilisateur Swagger
    • Remplacement du modèle d’assurance-chômage
    • Couche compatible avec Amazon API Gateway
  • Annulation de l’ordre par défaut
  • Utilisation de vocabulaires externes
  • Opération Nommage du chemin d’accès
    • Configuration
    • Créer un résolveur de trajectoires d’opérations personnalisées
  • Extension du contexte JSON-LD
  • Acceptez la demande/x-www-form-urlencoded Form Data
    • Créez votre décorateur DeserializeListener
    • Création de la définition du service
  • Authentification JWT
    • Installation de LexikJWTAuthenticationBundle
    • Configuration du Symfony SecurityBundle
    • Documentation du mécanisme d’authentification avec Swagger/Open API
    • Tester avec Behat
  • Intégration AngularJS
    • Rectangulaire
    • ng admis
  • Intégration FOSUserBundle
    • Installation de l’ensemble
    • Activation du pont
    • Création d’une entité utilisateur avec des groupes de sérialisation
  • Intégration de NelmioApiDocBundle
  • Configuration
  • Personnes concernées
    • Création d’un persister de données personnalisées
  • Dépréciation des ressources et des propriétés (alternative au versionnement)
    • Amortissement des catégories de ressources, de l’exploitation et des propriétés
    • Réglage de l’en-tête Sunset HTTP pour indiquer quand une ressource ou une opération sera supprimée
  • Considérations générales de conception
  • Utilisation des objets de transfert de données (DTO)
    • Spécification d’une représentation des données d’entrée ou de sortie
    • Mise à jour d’une ressource avec une entrée personnalisée
    • Désactivation de l’entrée ou de la sortie
    • Métadonnées d’entrée/sortie
    • Utilisation d’objets en tant que ressources internes de relations
    • Validation des objets de transfert de données
  • Support de recherche élastique
    • Activer le soutien à la lecture
    • Création de modèles
    • Filtrage
    • Création d’extensions personnalisées
  • Gestion des erreurs
    • Conversion d’exceptions PHP en erreurs HTTP
  • Gestion du téléchargement de fichiers
    • Installation de VichUploaderBundle
    • Configuration de l’entité recevant le fichier téléchargé
    • Gestion du téléchargement de fichiers
    • Résolution de l’URL du fichier
    • Faire une demande au point final /media_objects
    • Liaison d’une ressource MediaObject à une autre ressource
  • Support GraphQL
    • Activation de GraphQL
    • GraphiQL
    • Requêtes
    • Mutations
    • Filtres
    • Sécurité (contrôle d’accès)
    • Groupes de sérialisation
  • Identificateurs
    • Normalisateur d’identificateur personnalisé
    • Identifiants pris en charge
  • Pousser les mises à jour en direct à l’aide du protocole Mercure
    • Installation du support Mercure
    • Pousser les mises à jour de l’API
    • Envoi de mises à jour privées (mode autorisé)
  • Intégration de Symfony Messenger
    • Traitement des messages CQRS et Async
    • Installation de Symfony Messenger
    • Répartition d’une ressource par le bus de messages
    • Enregistrement d’un gestionnaire de messages
    • Accès aux données retournées par le gestionnaire
    • Détection des déménagements
    • Utilisation de Messenger avec un objet d’entrée
  • Support MongoDB
    • Activer le support MongoDB
    • Création de documents
    • Filtrage
    • Création d’extensions personnalisées
  • Pousser les ressources associées à l’aide de HTTP/2

 

Le composant générateur de schémas

  • Le générateur de schémas
    • Qu’est-ce que Schema.org ?
    • Pourquoi utiliser les données de Schema.org pour générer un modèle PHP ?
    • Documentation
  • Prise en main
    • Installation
    • Modèle Échafaudage
    • Cardinalité Extraction
  • Configuration
    • Personnalisation des espaces de nommage PHP
    • Forçage d’une plage de champ
    • Forcer une cardinalité de champ
    • Forcer le nom d’une table de relations
    • Forcer (ou désactiver) un parent de classe
    • Forcer une classe à être abstraite
    • Forcer une propriété annulable
    • Forcer une propriété unique
    • Création d’une propriété en lecture seule
    • Réalisation d’une écriture de propriété seulement
    • Forcer un bien à faire partie d’un groupe de sérialisation
    • Forcer l’incorporation d’une classe incorporable
    • Auteur PHPDoc
    • Désactivation des générateurs et création de générateurs personnalisés
    • Sauter la génération de la méthode Accessor
    • Désactiver le générateur d’identifiant
    • Génération d’UUIDs
    • UUID soumises par l’utilisateur
    • Génération d’ID personnalisé
    • Désactivation de l’utilisation des collections de doctrine
    • Modification de la visibilité sur le terrain
    • Génération d’annotations @Assert\Type Annotations
    • Forcer l’annotation de la cartographie de l’héritage de la doctrine
    • Interfaces et doctrine résoudre l’auditeur de l’entité cible
    • Schémas personnalisés
    • Vérification de la compatibilité GoodRelation
    • En-tête de fichier PHP
    • Référence complète de la configuration

 

La composante Admin

  • L’administrateur de la plate-forme API
    • Caractéristiques
  • Prise en main
    • Installation
    • Création de l’Admin
    • Personnalisation de l’Admin
  • Prise en charge de l’authentification
  • Gestion des relations avec les collections
    • Personnalisation d’une propriété
    • Personnalisation d’une icône
    • Utilisation d’une entrée autocomplète pour les relations
  • Personnalisation de l’Admin
    • Préparation de votre application
    • Personnalisation des entrées
    • Personnalisation des zones
    • « FREE « Mode
    • Réutilisation de la mise en page par défaut

 

Le composant générateur de client

  • Le générateur de client de la plate-forme API
    • Caractéristiques
  • Générateur de réaction
    • Installer
    • Génération d’une application Web progressive
    • Captures d’écran
  • Générateur Vue.js
  • Dépannage
  • Générateur Next.js
    • Installer
    • Démarrage du projet
    • Génération d’itinéraires
    • Captures d’écran
  • Générateur de Framework Quasar
  • Générateur React Native
    • Installer
    • Générer une application native
    • Captures d’écran dans iOS Simulator
  • Interfaces dactylographiées
    • Exemple

 

Déploiement

  • Déploiement d’applications de plate-forme API
  • Déploiement d’une application de plate-forme API sur Heroku
  • Déploiement dans une grappe Kubernetes
    • Préparation de votre cluster et de votre machine locale
    • Création et publication des images du docker
    • Déployer
    • Initialisation de la base de données
    • Tiller RBAC Issue
  • Implémentation de Traefik dans une plate-forme API Dockerisée
    • Mise en œuvre de base
    • Problèmes connus
    • Aller plus loin

 

Extra

  • Philosophie de la plate-forme API
  • Dépannage et dépannage
    • Utilisation du docker
    • Utilisation de la plate-forme API et de JMS Serializer dans le même projet
    • Erreur 502 « upstream sent too big header while reading response header from upstream » 502 Error
  • Guides des contributions
  • Code de conduite des collaborateurs
  • Le processus de libération
Langues et Lieux disponibles

Langues

  • Français
  • Anglais / English

Lieux

  • France entière
    • Paris
    • Lille
    • Reims
    • Lyon
    • Toulouse
    • Bordeaux
    • Montpellier
    • Nice
    • Sophia Antipolis
    • Marseille
    • Aix-en-Provence
    • Nantes
    • Rennes
    • Strasbourg
    • Grenoble
    • Dijon
    • Tours
    • Saint-Étienne
    • Toulon
    • Angers
  • Belgique
    • Bruxelles
    • Liège
  • Suisse
    • Genève
    • Zurich
    • Lausanne
  • Luxembourg

Nos Formateurs Référents

Témoignages

Il n'y a pas encore de commentaires. Soyez le premier à en écrire un dans la section noter la formation !

Afficher tous les témoignages

Il n'y a pas encore de commentaires. Soyez le premier à en écrire un dans la section noter la formation !

Noter la formation

2100€

1890€ HT / personne

3 jours (21 heures)

Paris
Il ne reste que quelques places
Disponible aussi en intra-entreprise pour former votre équipe.

Une question ? Un projet ?

Pour des informations complémentaires, n’hésitez pas à nous contacter.