PYTHON PERFECTIONNEMENT : Analyser, fiabiliser et optimiser du code existant
Aucun avis Voir les avis Masquer
Note issue des sessions de cette formation, y compris les programmes adaptés aux besoins des entreprises.
Aucun avis pour cette formation.
Cette formation permet d’approfondir Python à travers l’analyse et l’amélioration de code existant. Elle couvre les concepts avancés du langage, la structuration, la qualité, la performance et l’utilisation de bibliothèques courantes, avec une approche orientée maintenance, fiabilisation et évolution de projets réels (y compris code legacy ou généré automatiquement).
Prochaines sessions Inter 2 Prochaine : 23 nov. Voir Masquer
-
Places disponibles23 nov. → 25 nov. 2026350 € HTVoir la session →
-
Places disponibles14 déc. → 16 déc. 2026350 € HTVoir la session →
Objectifs pédagogiques
Compétences visées
Public cible et prérequis
Public cible
- Développeurs Python intermédiaires / avancés, équipes techniques travaillant sur du code existant ou toute personne souhaitant monter en expertise Python
Prérequis
- Bonne maîtrise de Python, connaissance de la POO et expérience sur des scripts ou projets Python
Programme détaillé
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
👉 TP : audit guidé d’un script “mystère” + cartographie des flux + modification métier sécurisée
🔹 Jour 2 — Structuration avancée avec fonctions et POO
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)
👉 TP : refactorisation d’un code (IA / legacy) + ajout de tests (pytest) + sécurisation du comportement
🔹 Jour 3 — Qualité, performance et industrialisation
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)
👉 TP final : analyse de logs XML + statistiques + visualisation + optimisation (profiling) + packaging du projet
Méthodes pédagogiques & évaluation
Méthodes pédagogiques
Modalités d'évaluation
Accessibilité
Ce programme peut être adapté pour les personnes en situation de handicap. Contactez-nous pour étudier vos besoins spécifiques.