Python Avancé : Web Services + ORM

Inter-company training

Who is the training for?

Développeurs Python

Duration

5,00 day(s)

Language(s) of service

EN FR

Next session

17.06.2024
Location
Paris

Price

2995,00€

Prerequisites

Avoir suivi le stage "Python: Initiation + Approfondissement" ou notions équivalentes

Goals

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

Contents

Comprendre le besoin
  • Présentation des Web Services (WS): fonctionnement, intérêt, interopérabilité
  • Architecture orientée service (SOA): composantes, technologies
  • Technologies: Architecture REST, Websockets
  • Plates-formes à services web
  • Choix de l'implémentation
  • Design et documentation: Swagger
  • Outils de test de services web

Atelier: Installation de l'environnement de développement et d'exécution, choix d'une implémentation de WebService, description d'un service

Implémenter et interroger des services web REST
  • Architecture REST: composantes, méthodes d'appel
  • Flask ou Django: présentation des outils pour des services REST
  • Envoi de paramètres, validations
  • Type de réponse, format
  • Gestion des erreurs
  • Déploiement d'un service RESTful
  • Interrogation de web services REST (Python/Javascript)

Atelier: Création et interrogation d'une API REST

Sécuriser un service web
  • Niveaux de sécurité
  • Gestion de l'authentification dans un web service
  • Gestion des droits
  • Cryptographie au niveau des messages
  • Signatures de messages
  • Standards de sécurité disponibles

Atelier: sécurisation globale de l'API

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.

Atelier: Implémentation d'un salon de discussion utilisant des websockets.

Teaching methods

Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.

Evaluation

Contrôle continu

Certificate, diploma

Attestation de fin de stage mentionnant le résultat des acquis

Next session

Datum
City
Language and price
17.06.2024

21.06.2024
Paris
FR 2995,00€
17.06.2024

21.06.2024
A distance
FR 2995,00€
01.07.2024

05.07.2024
Strasbourg
FR 2995,00€
14.10.2024

18.10.2024
Paris
FR 2995,00€
14.10.2024

18.10.2024
A distance
FR 2995,00€
04.11.2024

08.11.2024
Strasbourg
FR 2995,00€

Organization contact details

Dawan - Service commercial

These courses might interest you