Développeurs Python intermédiaires / avancés, équipes techniques travaillant sur du code existant ou toute personne souhaitant monter en expertise Python
Durée : 3 jours - 21 heures
Tarif : Nous contacter pour une formation INTER – INTRA ou en COURS PARTICULIER
La formation est délivrée en présentiel ou distanciel (e-learning, classe virtuelle, présentiel et à distance). Le formateur alterne entre méthodes démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation). La validation des acquis peut se faire via des études de cas, des quiz et/ou une certification.
Cette formation est animée par un consultant-formateur dont les compétences techniques, professionnelles et pédagogiques ont été validées par des diplômes et/ou testées et approuvées par l’éditeur et/ou par Audit Conseil Formation.
Bonne maîtrise de Python, connaissance de la POO et expérience sur des scripts ou projets Python
- Evaluation des besoins et objectifs en pré et post formation
- Evaluation technique des connaissances en pré et post formation
- Evaluation générale du stage
RAPPELS AVANCÉS DU LANGAGE (VERSION “MAINTENANCE”)
Références et mutabilité (mutable / immutable) : bugs classiques
Passage d’arguments, valeurs par défaut, variables locales
Variables de classe vs instance
Structures de contrôle avancées : else sur for, while, try
Imports : lecture de projet, dépendances, couplage
LECTURE ET COMPRÉHENSION DE CODE
Identifier la logique métier
Comprendre les flux de données
Repérer les zones à risque
Travail pratique
Audit guidé d’un script “mystère” + cartographie des flux + modification métier sécurisée
FONCTIONS AVANCÉES
Décorateurs : lecture et utilisation
*args / **kwargs : API flexibles
Closures : usages et limites
POO AVANCÉE
Property : contrôle d’accès
Itérateurs et protocoles d’itération
Context Managers : gestion des ressources
Classes abstraites (ABC) : définir des contrats
CONCEPTION AVANCÉE
Design Patterns : quand et comment les utiliser
Métaclasses : compréhension (lecture de code existant)
Travail pratique refactorisation d’un code (IA / legacy) + ajout de tests (pytest) + sécurisation du comportement
Refactorisation d’un code (IA / legacy) + ajout de tests (pytest) + sécurisation du comportement
QUALITÉ ET DÉPLOIEMENT
Installation de librairies (pip, PyPI)
Packaging (setuptools)
Environnements (virtualenv)
Versioning et reproductibilité
PERFORMANCE ET CONCURRENCE
Profiling avec cProfile
Optimisation basée sur mesure
Threading vs multiprocessing
Introduction au calcul distribué (Dask)
LIBRAIRIES COURANTES (PANORAMA PROJET)
Data : NumPy, Pandas, Matplotlib
Scientifique : SciPy
IA : Scikit-learn (pipeline simple, vigilance usage)
Données et systèmes : XML, logs, accès réseau
Accès base de données (SQL / ORM)
Travail pratique final
Analyse de logs XML + statistiques + visualisation + optimisation (profiling) + packaging du projet