Accueil / Développer avec PYTHON avancé

Développer avec PYTHON avancé

Durée : 3 jours
Tarif Inter : 1600 €
Tarif sur mesure : Nous consulter
Référence : 3PY2

  • Partagez sur
  • Téléchargez en
  • Inscrivez vous
Programme Public & Pré-requis Organisation

Présentation

Cette formation vous permettra de développer vos compétences fondamentales en programmation Python pour créer des applications fiables et stables. Vous améliorerez votre maîtrise de Python grâce aux meilleures pratiques en matière de programmation orientée objet, de test, de débogage, de mesure et d’amélioration des performances des applications et de développement de services RESTful. 

Objectifs

  • Utiliser des design patterns et les meilleures pratiques dans les applications Python
  • Réaliser des tests unitaires, débogages et installations de programmes et modules Python
  • Profiler l’exécution d’un programme et améliorer les performances
  • Appliquer des fonctionnalités de programmation Python avancées pour des programmes efficaces, fiables et maintenables

Programme

  1. Programmation Orientée Objet en Python

    • Extension de classes pour définir des sous-classes
    • Héritage de plusieurs superclasses et classes mixtes
    • Ajout de propriétés à une classe
    • Définition des classes de base abstraites
  2. Présentation des outils

    • Les éditeurs
    • Jupyter et Jupyter lab
    • Spyder, Anaconda, Visual Studio Code, PyCharm, etc.
  3. Explorer les fonctionnalités de Python

    • Ecrire un code Python à l’image de la technologie
      • Personnalisation d’itération et indexation avec des méthodes “magiques”
      • Modification dynamique de code avec les techniques du Monkey Patching
    • Gestion des exceptions
      • Déclencher des exceptions définies par l’utilisateur
      • Réduction de la complexité du code avec les gestionnaires de contexte et l’instruction « with »
  4. Vérification du code et tests unitaires

    • Tester les meilleures pratiques
      • Développement et exécution de tests unitaires Python
      • Simplifier les tests automatisés avec le package Nose
    • Vérification du comportement du code
      •  Se jouer des objets dépendants avec le paquet Mock
      • Assurer le comportement correct du code avec MagicMock
      • Détection des erreurs et techniques de debugging
    • Identification des erreurs
      • Enregistrement des messages pour l’audit et le debugging
      • Vérifier votre code pour des bugs potentiels avec Pylint
    • Débugger du code Python
      • Extraction des informations d’erreur depuis les exceptions
      • Tracer l’exécution d’un programme avec l’IDE PyCharm
  5. Interfaçage avec les webservices et les clients de REST

    • Webservices Python REST
      • Présentation de Flask, Django, etc.
      • Mise en place d’un service REST
      • Générer des réponses JSON pour soutenir les clients Ajax
    • Clients Python REST
      • Envoi de demandes REST à partir d’un client Python
      • Consommation de données de réponse JSON et XML
  6. Mesure et amélioration des performances de l’application

    • Mesure de l’exécution de l’application
      • Chronométrage de l’exécution des fonctions avec le module « timeit
      • Profilage de l’exécution d’un programme à l’aide de « cProfile »
      • Manipuler un profil d’exécution de manière interactive avec les « pstats »
    • Utilisation des fonctionnalités du langage Python pour les performances
      • Appliquer efficacement les structures de données, notamment les listes, les dictionnaires et les tuples
      • Cartographier et filtrer les ensembles de données en utilisant la compréhension de listes
      • Remplacement de l’interpréteur Python standard par PyPy
  7. Installation et distribution des modules

    • Gestion des dépendances d’un projet avec pip
      • Le fichier “requirements.txt”
      • La gestion des versions
    • Gestion des versions des modules
      • Installation de modules du dépôt PyPi à l’aide de « pip »
      • Portage du code entre les versions Python
    • Création de paquets de modules et d’applications Python
      • Mise en place d’environnements Python isolés avec « virtualenv »
      • Construire un paquet de distribution avec « setuptools »
      • Télécharger vos modules Python sur un dépôt local
  8. Exécution simultanée

    • Des fils légers
      • Création et gestion de plusieurs fils de contrôle avec la classe Thread
      • Synchronisation des fils à l’aide de verrous
    • Des processus lourds
      • Lancement des commandes du système d’exploitation en tant que sous-processus
      • Synchronisation des processus avec les files d’attente
      • Paralléliser l’exécution en utilisant des pools de processus et des exécuteurs
  9. Les “autres” Python

    • Présentation de Cython, CPyton
    • Le typage avec MyPy
Formations à distance
En inter et en intra entreprise

Contactez-nous :
training@softeam.fr
+33 (0)6 07 78 24 18
Prochaines dates

Demande de renseignement