Перейти к содержимому

🐍 Python – Créer un module métier pour gérer les participants | Modularité – Partie 4

CodeEnJava

0:00 / 0:00

🐍 Python – Créer un module métier pour gérer les participants | Modularité – Partie 4

29 просмотров · 6 дней назад
CodeEnJava
63 подписчика
29 просмотров · 6 дней назад
🐍 *Python – Créer un module métier pour gérer les participants | Modularité – Partie 4* Dans cette nouvelle vidéo, nous poursuivons le développement de notre application **« Gestion des participants »**. Après avoir travaillé sur les *fonctions**, les **modules* et l'organisation progressive de notre application, nous allons analyser le contenu de `main.py` afin d'identifier les responsabilités qui peuvent être extraites dans un nouveau module. 🎯 *L'objectif de cette séance est de créer un module dédié à la gestion des participants et de poursuivre la modularisation de notre application Python.* 🧩 Création du module `participants.py` Nous allons créer un nouveau module : ```text participants.py ``` Sa responsabilité est de regrouper progressivement les opérations métier réalisées sur les participants des différents groupes de formation. Ce module permettra notamment de centraliser des fonctionnalités telles que : ➕ Ajouter un participant ➖ Supprimer un participant 🔎 Rechercher un participant 🤝 Identifier les participants communs à plusieurs groupes L'objectif est de réduire progressivement les responsabilités du fichier `main.py` et de mieux répartir le code entre des modules spécialisés. --- 📌 Réorganisation des données Nous faisons également évoluer le module `data.py`. Nous allons notamment : renommer la collection contenant les noms des groupes en `group_names` ; améliorer la lisibilité et la cohérence du code ; créer un dictionnaire `groups` permettant d'associer chaque nom de groupe à son ensemble de participants. ```python groups = { "python": python, "java": java, "web": web } ``` --- ⚙️ Amélioration du module `services.py` Nous faisons évoluer les services liés à la gestion des groupes. La fonction : ```text group_set() ``` est renommée : ```text create_group_dict() ``` Un nom plus explicite et plus cohérent avec la responsabilité de la fonction. Nous travaillons également sur différentes fonctionnalités permettant de : créer un dictionnaire des groupes ; vérifier la validité des données ; afficher les groupes disponibles ; sélectionner un groupe. --- ➕ Ajouter un participant Nous mettons ensuite en place une première fonctionnalité dans le nouveau module `participants.py`. Pour améliorer l'organisation du code, nous séparons deux responsabilités. 🔹 La logique métier ```python add_participant_aux() ``` Cette fonction réalise directement l'ajout d'un participant dans le groupe sélectionné. 🔹 L'interaction avec l'utilisateur ```python add_participant() ``` Cette fonction : demande le nom du participant ; demande dans quel groupe l'ajouter ; appelle la fonction responsable de l'ajout ; gère le retour vers le menu principal. Cette organisation permet de mieux distinguer : 👉 *l'interaction avec l'utilisateur* 👉 *la logique métier de l'application* --- 🔄 Simplifier progressivement `main.py` Après la création du nouveau module, nous mettons à jour `main.py`. L'objectif est de conserver dans ce fichier principalement la gestion générale de l'application : affichage et navigation dans les menus ; gestion du déroulement du programme ; orientation vers les différentes fonctionnalités. Par exemple, l'ajout d'un participant peut désormais être délégué simplement au module spécialisé : ```python add_participant() ``` --- 🧠 Une étape importante vers une application modulaire Progressivement, notre application évolue vers une architecture organisée autour de plusieurs modules : ```text data.py → Données de l'application reader.py → Saisie des informations utilisateur services.py → Services liés aux groupes participants.py → Logique métier liée aux participants main.py → Point d'entrée et orchestration de l'application ``` Cette organisation permet d'obtenir un code : ✅ plus lisible ✅ mieux organisé ✅ plus facile à maintenir ✅ plus facile à faire évoluer ✅ plus simple à tester 🎓 *Cette vidéo s'inscrit dans notre progression pédagogique consacrée à Python, aux fonctions, aux modules et à la modularité d'une application.* Nous partons progressivement d'un programme regroupant de nombreuses responsabilités dans `main.py` pour évoluer vers une application composée de modules spécialisés. 🐍 *Python | Fonctions | Modules | Modularité | Architecture | Séparation des responsabilités | Logique métier | Ensembles | Dictionnaires* 💻 Retrouvez les projets et ressources associés sur mon GitHub : 👉https://github.com/CodeEnJava/2026-se... #Python #Programmation #ApprendrePython #FormationPython #FonctionsPython #ModulesPython #Modularité #ArchitectureLogicielle #CodeEnJava