- Référence : OPYD
- Durée : 4 jours (28h)
- Lieu : Au choix. À distance ou en présentiel, à Paris ou en Régions
En intra
Vous pouvez suivre cette formation en direct depuis votre domicile ou votre lieu de travail. Plus d'informations sur notre solution de classe à distance...
Cette formation Python Bonnes pratiques et Design patterns vous apprend les bonnes pratiques de programmation avec Python.
Lors de ce cours, les participants approfondissent leur expérience de la programmation avec Python pour rendre leurs applications fiables et stables et pour appliquer des design patterns (patrons de conception) qui leur permettront de résoudre les principales difficultés qu'ils rencontrent dans la conception de logiciels avec Python.
Objectif pédagogique :
Savoir maîtriser les bones pratiques Design patterms avec Python.
Objectifs pédagogiques :
Concrètement, à l'issue de cette formation Python Bonnes pratiques et Design patterns vous aurez acquis les connaissances et les compétences nécessaires pour :
Public :
Cette formation est destinée aux programmeurs, développeurs, ingénieurs en logiciels, testeurs et responsables techniques souhaitant approfondir leurs connaissances du langage Python.
Prérequis :
Afin de suivre ce stage, il est nécessaire d'avoir suivi la formation Python (réf. OPYT) ou de posséder les connaissances équivalentes telles qu'une expérience professionnelle d'au moins 3 mois de programmation avec Python.
Étendre les classes pour définir des sous-classes
Hériter des plusieurs super-classes et classes mixin
Ajouter des propriétés à une classe
Définir des classes abstraites de base
Écriture de code Python
Personnaliser les itérations et les indexations avec des méthodes « magiques »
Modifier le code de façon dynamique avec le « monkey patching »
Traitement des exceptions
Lever des exceptions personnalisées
Réduire la complexité du code avec les gestionnaires de contexte et l'instruction with
Tests : Les bonnes pratiques
Développer et lancer des tests unitaires Python
Simplifier les tests automatiques avec le paquetage Nose
Vérification du comportement du code
Investiguer les dépendances entre objets avec le paquetage Mock
Mettre en œuvre les assertions avec le paquetage MagicMock
Identification des erreurs
Journaliser les messages pour les audits et le débogage
Vérifier le code à la recherche de bogues avec PyLint
Débogage du code Python
Extraire les informations sur les erreurs à partir des exceptions
Suivre l'exécution du programme avec l'environnement de développement intégré PyCharm
Patrons structurels
Mettre en œuvre les patrons décorateurs avec @
Contrôler les accès à un objet avec le patron Proxy
Patrons comportementaux
Utiliser le patron d'itération avec les générateurs Python
Définir un algorithme squelette avec le patron de méthode
Autoriser des couplages lâche entre classes avec le patron observateur
Services Web REST Python
Développer un service REST
Générer des réponses JSON pour des clients Ajax
Clients REST Python
Envoyer des requêtes REST depuis un client Python
Utiliser les données JSON et XML renvoyées
Mesurer l'exécution de l'application
Chronométrer l'exécution des fonctions avec le module « timeit »
Suivre l'exécution du programme via « cProfile »
Manipuler le suivi de l'exécution de manière interactive avec « pstats »
Les fonctionnalités du langage Python pour l'optimisation des performances
Déterminer les structures de données efficaces parmi listes, dictionnaires et tuples
Transformer et filtrer des ensembles de données avec les compréhensions
Remplacer l'interpréteur traditionnel Python par PyPy
Gestion des versions des modules
Installer les modules depuis le dépôt PyPi avec pip
Portabilité du code entre les différentes versions de Python
Paquetage des modules et des applications Python
Définir des environnements Python isolés avec « virtualenv »
Préparer la distribution d'un paquetage avec « setuptools »
Importer les modules Python dans un dépôt local
Processus légers (threads)
Créer et gérer plusieurs threads de contrôle avec la classe Thread
Synchroniser des threads avec des verrous
Traitements lourds
Exécuter des commandes du système d'exploitation comme sous-processus
Synchroniser des processus avec les files d'attente
Exécuter des traitements en parallèle avec les groupes de processus et des exécuteurs
Ce cours alterne théorie et travaux pratiques pour une meilleure assimilation des notions évoquées.
Les travaux pratiques abordés lors de ce cours sont les suivant :
Les avis figurant ci-dessous sont issus des fiches d’évaluation que remplissent les participants à la fin de la formation. Ils sont ensuite publiés automatiquement si les personnes ont explicitement accepté que nous les diffusions.
Mon avis sur le contenu du stage :
"Le contenu a évolué au cours de la formation en fonction du publique ce qui est appréciable."
Mon avis sur le formateur :
"Le formateur a réussi à recueillir notre feedback en distanciel ce qui est assez impressionnant. Il s'est montré disponible et à toujours répondu à nos sollicitations. Son niveau technique est excellent. Merci"
Ce que j'ai le plus apprécié :
"Possibilité de partage des écrans de tous les participants (vraiment intéressant pour montrer aux autres nos travaux et problèmes)."
Ce que j'ai le moins apprécié :
"Peut-être plus difficile d'avoir des échanges entre nous."
Mon avis sur le contenu du stage :
"La formation était bien complète et a permis de parcourir beaucoup de fonctionnalités de python. Nous avons suivant nos métiers des besoins différents dans l'utilisation de python et les cours et exercices étaient très variés pour convenir à tous. "
Mon avis sur le formateur :
"Notre formateur connaît parfaitement son domaine et est très pédagogue. Il a su répondre à nos questions et adapter les supports car nous avons tous des niveaux d'utilisation différents de Python. "
Mon avis sur le contenu du stage :
"Le contenu était un peu trop dense par rapport au temps imparti, avec un enchaînement assez rapide, du coup il était difficile d'assimiler les notions vues."
Mon avis sur le contenu du stage :
"Formateur très intéressant qui explique très bien les concepts"
Mon avis sur le formateur :
"Formateur agréable, disponible et très compétent"
Formations Informatique
et Management
en ligne à ce jour
+
Stagiaires dans nos salles
de cours sur
l'année
%
De participants satisfaits
ou très satisfaits de nos
formations
Formateurs experts
validés par
PLB