Formation Python Avancé : FastAPI + ORM
Un support et les exercices du cours pour chaque stagiaire Un formateur expert ayant suivi une formation à la pédagogie Boissons offertes pendant les pauses en inter-entreprises Salles lumineuses et locaux facilement accessibles Méthodologie basée sur l'Active Learning : 75% de pratique minimum Matériel pour les formations présentielles informatiques : un PC par participant Positionnement à l'entrée et à la sortie de la formation Certification CPF quand formation éligible
Prérequis
Public admis
- Salarié en Poste
- Entreprise
Demandeur d'emploi et Etudiant non admis
Financement
- Votre OPCO
- Financement personnel
Financement CPF non pris en charge
Modalités
- En centre
- En entreprise
- À distance
Objectifs pédagogiques
Programme de la formation
Découvrir FastAPI
Présentation des Web Services (WS) : fonctionnement, intérêt, interopérabilité
Architecture orientée services (SOA) vs microservices : composantes, technologies
FastAPI : présentation, cas d'usage, architecture
FastAPI vs autres frameworks (Flask, Django)
Design et documentation : OpenApi Specification (Swagger)
Outils de test de services web : Postman
Atelier : Installation de l'environnement de développement (VS Code + Interpréteur Python) - Création d'un projet FastAPI (structure, point d'entrée, dépendances)
Implémenter et interroger des services web REST
Architecture REST : composantes, méthodes d'appel (GET, POST, PUT, DELETE)
Définition de routes
Gestion des paramètres de la requête
Validation des entrées : typing, pydantic
Types de réponses, format (json, xml, texte, binaire)
Gestion des erreurs
Traitements asynchrones
Déploiement d'un service RESTful
Interrogation de web services REST (Python/Javascript)
Implémentation de tests unitaires et fonctionnels (TestClient, PyTest)
Déploiement et configuration d'une application FastAPI sur un serveur (Uvicorn, Hypercorn)
Atelier : Création et interrogation d'une API REST avec FastAPI
Sécuriser une application FastAPI
Niveaux de sécurité
Gestion de l'authentification dans un web service (JWT, OpenID Connect)
Gestion des droits (OAuth2)
Multiples configurations : CORS, HTTPS, ...
Atelier : sécurisation globale de l'application FastAPI
Réaliser un mapping relationnel objet (ORM)
Pattern DAO (Data Access Object)
Frameworks ORM : fonctionnalités, intérêt
ORMs Python : SQLAlchemy, Django ORM, PonyORM, SQLObject, Peewee, ...
Mapping des tables et gestion des clés primaires (simples, composées)
Mapping des types de bases, propriétés des colonnes
Gestion de la concurrence : optimistic (versioning), pessimistic
Gestion des relations : OneToMany/ManyToOne, OneToOne, ManyToMany
Paramétrage des cascades
Gestion des collections
Mapping de l'héritage
Stratégies de chargement : Lazy ou Eager
Atelier : Réalisation d'un schéma global de mapping d'une base de données
Ecrire des requêtes avec un ORM
Langage de requêtes objet
Sélections de base, filtres
Jointures complexes
Fonctions d'agrégation, de chaine, ...
Gestion des chargements Lazy/Eager
Atelier : Réalisation d'opérations CRUD (Create Read Update Delete) - requêtes complexes
Découvrir des fonctionnalités avancées
Cycle de vie des entités et validation
Intercepteurs, Event-listeners
Configuration avancée : performance et fonctionnalités
Utilisation du cache
Serveurs Websockets en Python
Atelier : Implémentation d'intercepteurs et gestion du cache.
Proposé par
DAWAN
"Formez-vous à l’excellence."
Proposé par
DAWAN