Python Avancé : Web Services + ORM

Loader DigitalCityEen ogenblik, aub...

Python Avancé : Web Services + ORM

(Réf.100613)
35
Uur/Uren
Werkzoekende
Betalend

Georganiseerd door:

Wat zijn de doelstellingen van de opleiding?

Construire une API en Python et implémenter une couche d'accès aux données avec un ORM

Opleidingsprogramma

Connaître le besoin et l'écosystème

- Présentation des Web Services (WS) : fonctionnement, intérêt, interopérabilité
- Architecture orientée service (SOA) : composantes, technologies
- Technologies : Architecture REST
- Design et documentation : Swagger
- Outils de test de services web

 

Interroger des services web REST

- Outils d'interrogation en Python
- Gestion des paramètres d'accès aux API
- Types d'authentification aux API RESTful (BASIC HTTP, Bearer Token etc.)

Atelier : Interroger des services web ouverts et avec authentification

 

Implémenter un service web REST

- Rappels sur l'architecture REST
- Composantes et méthodes d'appel
- Sérialisation des données
- Conseils pour la création de points d'entrée REST

 

Implémenter un service web avec Python

- Bibliothèques d'API REST : FastAPI, Flask ou Sanic
- Déclarer des routes et des méthodes
- Accepter des paramètres
- Validation des paramètres et gestion des erreurs
- Authentification (BASIC, Bearer Token)

Atelier : Créer un service web avec FastAPI

 

Implémenter un service web avec Django

- Découverte de l'écosystème des frameworks REST pour Django (DRF, Ninja)
- Déclarer des routes et des méthodes
- Accepter des paramètres
- Validation des paramètres et gestion des erreurs
- Authentification (BASIC, Bearer Token)
- Gestion des droits dans Django
- Mise en cache (Memcached ou Redis)

Atelier : Créer un service web avec Django-Ninja

 

Déploiement d'un service web

- Architecture de base d'un déploiement Django
- Architecture de base d'un déploiement FastAPI


Manipuler des bases de données en programmation objet (ORM)

- Principe des ORM (Pattern DAO)
- Bibliothèques d'ORM Python : SQLObject, SQLAlchemy, Peewee, PonyORM, Django

 

Découverte d'un ORM

- Choix d'un ORM
- Découvrir les concepts de base des ORMs
- Mapping : modèles, colonnes, métadonnées de tables
- Gérer son schéma de données
- Concept de migrations de schéma
- Gestion des relations entre tables : n à 1, 1 à 1, n à n
- Optimisations (syndrome des n+1 requêtes, etc.)

Atelier : Découverte de l'ORM Peewee et Django

 

Ecrire des requêtes avec un ORM

- Sélections de base, filtres
- Jointures en SQL et jointures en objet
- Fonctions d'agrégation, scalaires et de fenêtrage
- Désérialisation lazy/eager

Atelier : Développer une couche modèle efficacement

 

Découvrir des fonctionnalités avancées

- Mettre en cache (ex. Redis ou autres)
- Outils de mise en cache avec Django
- Siganux (intercepteurs, event-listeners)

Atelier : Découvrir les outils de cache pour ORM

Deze cursus verschijnt in de catalogus Dawan maar er zijn nog geen data gepland.