Dawan is a training organisation that offers more than 2000 training courses in IT, management, project management and sales in instructor-led live online or on-site trainings. We have 11 centres in France and we have developed partnerships with local structures in Brussels, Luxembourg and Geneva. Our catalogue includes hundreds of topics: Java, PHP, Webmaster, E-Marketing, Linux, Windows Server, Vmware, Autocad, Photoshop, IA etc. Our courses have been created and designed by in-house trainers who have over 20 years of teaching experience. Constantly renewed, they are adapted to the requirements of our customers and to the evolution of technologies.
The content of this page is not available in English
Développeurs Python
Avoir suivi le stage "Python : Initiation + Approfondissement" ou notions équivalentes
Construire une API en Python avec FastAPI et implémenter une couche d'accès aux données avec un ORM
Présentation des Web Services (WS): fonctionnement, intérêt, interopérabilitéArchitecture orientée services (SOA) vs microservices: composantes, technologiesFastAPI: présentation, cas d'usage, architectureFastAPI vs autres frameworks (Flask, Django)Design et documentation: OpenApi Specification (Swagger)Outils de test de services web: PostmanAtelier: 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)
Architecture REST: composantes, méthodes d'appel (GET, POST, PUT, DELETE)Définition de routesGestion des paramètres de la requêteValidation des entrées: typing, pydanticTypes de réponses, format (json, xml, texte, binaire)Gestion des erreursTraitements asynchronesDéploiement d'un service RESTfulInterrogation 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
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
Pattern DAO (Data Access Object)Frameworks ORM: fonctionnalités, intérêtORMs 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 colonnesGestion de la concurrence: optimistic (versioning), pessimisticGestion des relations: OneToMany/ManyToOne, OneToOne, ManyToManyParamétrage des cascadesGestion des collectionsMapping de l'héritageStratégies de chargement: Lazy ou EagerAtelier: Réalisation d'un schéma global de mapping d'une base de données
Langage de requêtes objetSélections de base, filtresJointures complexesFonctions d'agrégation, de chaine,...Gestion des chargements Lazy/EagerAtelier: Réalisation d'opérations CRUD (Create Read Update Delete) - requêtes complexes
Cycle de vie des entités et validationIntercepteurs, Event-listenersConfiguration avancée: performance et fonctionnalitésUtilisation du cacheServeurs Websockets en PythonAtelier: Implémentation d'intercepteurs et gestion du cache.
Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.
Contrôle continu
Attestation de fin de stage mentionnant le résultat des acquis
Sources des exercices + Support papier