UTILISER LES "CONTEXT MANAGERS
- Gestion des ressources en python : try ... finally, with, utilisation de with
- Utilisation de with : gérer des fichiers, analyser des répertoires, calculer en haute précision, manipuler des verrous en multithread, tester les exceptions avec pytest
- Résumer les avantages de with
- Utiliser Async avec et with
- Créer des "context Managers"
- Encodage des contextes : contexte simple, exceptions, ouverture de fichiers, redirection de sorties, temps d'exécution
- Context Manager par fonction : ouverture de fichiers version2, Temps
- Améliorer ses APIs
- Context manager asynchrone
UTILISER LES META-CLASSES
- Modes des metas : ancien mode vs nouveau mode
- Typage et classes
- Définir une classe dynamiquement : exemple de base, exemples avancés
- Créer une propre meta-classe
- Justification de l'utilisation
FONCTIONS INTERNES ET CLOSURE
- Création de fonctions internes
- Les bases des internes : encapsulation, construction, inner contre privé
- Conservation d'un état : méthode d'état, modifier l'état
- Ajouter un comportement
- Closure : attacher code et données, où trouver des closures, comment les utiliser au mieux
CONCURRENCE ET PARALLÉLISME
- Accélérer un programme pour entrées/sorties : IO Synchrone, IO avec Thread, IO asynchrone
- Accélérer un programme pour CPU : CPU Synchrone, CPU avec Thread, CPU asynchrone
MONITORING
- Outils internes pré-installés
- Fonctions de timer
- Outils et plates-formes externes : Datadog, Dynatrace, Manage engine
FREEZING, PACKAGING
- Différences entre les modes
- Avantages
- Outils de freezing : Windows, OSX, Linux
- Packaging : choisir un nom, structuration
- Publication sur PyPi
- Package complet : ajouter et ignorer des fichiers, dépendances du package, description meta du package, tests, ressources complémentaires
- Scripting de package
- Assemblage final
LES FRAMEWORKS SPÉCIALISÉS
- XML : Standards (DOM, SAX, StAX), librairies en python, modules externes (untangle, xmltodiict, lxml, BS), conversion et Binding (XPath, génération de modèles objet), sécurisation de parsers
- IA et ML : Tensorflos, Seaborn, Numpy, Pandas, Jeras, Theano, PyTorch, Scikit-learn
- Sciences : Numpy, Pandas, SciPy, Matplotib
- Web : Django, Flask, Bottle, CherryPy, Falcon
- Autres frameworks métiers : Bio, Astronomie, OLAP, Finance, Géologie,...