Objectifs du cours
Devenez un expert Python avec des compétences avancées en programmation !
Découvrez les secrets des structures de données avancées, des fonctions sophistiquées et de la programmation orientée objet. Apprenez à manipuler des fichiers complexes, à interagir avec des API et à optimiser vos applications grâce à la programmation asynchrone et au multithreading. Ce cours vous offre les compétences nécessaires pour exceller dans le développement Python et résoudre des problèmes complexes avec élégance et efficacité.
Ce plan de cours vise à fournir aux participants
➢ Approfondir la maîtrise des structures de données avancées et des fonctions en Python.
➢ Renforcer les compétences en POO en Python en explorant des concepts avancés.
➢ Savoir manipuler des données à grande échelle et interagir avec des API.
➢ Comprendre et implémenter la programmation asynchrone et parallèle en Python.
Public
- Ce cours s’adresse aux programmeurs ayant déjà une expérience de base avec Python et souhaitant approfondir leurs compétences.
Il est conçu pour :
- Des développeurs Python débutants cherchant à passer à un niveau intermédiaire.
- Des professionnels utilisant Python dans leur travail quotidien et voulant apprendre des techniques plus avancées.
- Des étudiants ayant terminé un cours de base en Python et souhaitant se spécialiser davantage.
Prérequis
Pour suivre ce cours intermédiaire, les participants doivent :
- Avoir une compréhension solide des bases de Python, y compris les types de données, les structures de contrôle de flux, et la création de fonctions.
- Avoir une expérience pratique avec Python, idéalement à travers des projets ou des exercices réguliers.
- Être familiarisés avec la programmation orientée objet de base en Python.
- Avoir des notions de manipulation de fichiers et de gestion d’exceptions en Python.
Matériel
- Ordinateur ou tablette : Chaque participant a besoin d'un ordinateur ou d'une tablette équipée des logiciels nécessaires, comme un navigateur web, pour accéder au contenu de la formation.
- Connexion internet stable : Une connexion Internet fiable et rapide est cruciale pour participer efficacement aux vidéoconférences et accéder aux outils en ligne sans problèmes de connectivité.
- Casque avec microphone : Un casque avec microphone intégré est recommandé pour améliorer la qualité audio et minimiser les bruits de fond lors des discussions en ligne.
- Webcam : Une webcam est nécessaire pour les vidéoconférences, facilitant les interactions plus personnelles et engageantes entre les participants et les formateurs.
Modalités d'organisation et d'accès
- Formation a distance / en présentiel sur demande
- Inscription requise jusqu'à 24 heures avant le début.
-
Pour les formations intra-entreprise, le client doit s'assurer et s'engager à fournir toutes les ressources matérielles pédagogiques requises (équipements informatiques, etc.) nécessaires au bon déroulement de la formation, conformément aux prérequis spécifiés dans le programme de formation fourni.
Accessibilité pour les personnes handicapées
- Si vous nécessitez des aménagements pour des besoins spécifiques d’accessibilité, contactez Mme STEMPERT, notre référente handicap, par e-mail : referent-handicap@groupe-sr3.com pour discuter des solutions possibles.
Contenu du cours
Partie 1 : Approfondir la maîtrise des structures de données avancées et des fonctions en Python.
- Exploration des structures de données avancées : piles, files d’attente, et graphes.
- Utilisation des collections spécialisées du module collections (deque, namedtuple, defaultdict, Counter).
- Fonctions avancées : fonctions anonymes (lambda), fonctions d’ordre supérieur, décorateurs, et générateurs.
- Compréhension de la gestion des exceptions avancée et du traitement des erreurs.
Partie 2 : Programmation Orientée Objet (POO) Avancée
- Revue des concepts de base de la POO : classes, objets, héritage, et polymorphisme.
- Concepts avancés : méthodes statiques, méthodes de classe, méthodes magiques, et gestion des attributs (getters/setters).
- Héritage multiple et composition d’objets.
- Introduction à la programmation orientée prototype avec les classes abstraites et les interfaces.
Partie 3 : Gestion des Données et Communication avec des API
- Manipulation avancée de fichiers : JSON, XML, et manipulation de fichiers binaires.
- Introduction à la bibliothèque pandas pour l’analyse de données.
- Communication avec des API REST : requêtes HTTP avec requests, traitement des réponses, authentification.
- Automatisation des tâches et gestion des flux de données entre applications. Introduction aux modules et aux bibliothèques standard de Python.
Partie 4 : Programmation Asynchrone et Multithreading
- Introduction à la programmation asynchrone avec asyncio : coroutines, boucles d’événements, et tâches asynchrones.
- Concepts de multithreading et multiprocessing : gestion des threads, processus, et synchronisation.
- Comparaison entre programmation synchrone, asynchrone, et parallèle.
- Optimisation des performances des applications Python pour des tâches intensives.
Méthodologie
- Présentations interactives
- Démonstrations en direct
- Sessions de discussion en groupe pour encourager la réflexion collective et l'échange d'idées.
- Analyse de cas concrets permettant aux participants d'explorer différents scénarios et d'appliquer leurs connaissances théoriques.
- Réalisation d'études de cas pour approfondir la compréhension des concepts abordés et leur application dans des situations réelles.
- Utilisation de questionnaires interactifs pour évaluer régulièrement la compréhension des participants et favoriser la participation active.
- Feedback personnalisé et continu pour orienter les discussions, identifier les lacunes et stimuler l'apprentissage.
Évaluation
- Réalisation d’un test initial avant la formation pour évaluer les connaissances préalables.
- Evaluation formative via des exercices pratiques permettant l’auto-évaluation de l’apprenant.
- Evaluation sommative pour valider le parcours de formation.
- Effectuer régulières pendant le parcours pour permettre une remédiation adaptée.
- Évaluation de la compréhension des concepts clés à travers des quiz ou des travaux écrits.
- Questionnaire de fin de formation pour tester les connaissances acquises.
Cours mis à jour en date du 06/09/2024