Programmation PYTHON – Fonctions avancées
3 jours - 21 heures
Objectifs
Acquérir une maîtrise approfondie des concepts avancés en Python, notamment la programmation orientée objet, la gestion multithread, et la programmation réseau, Utiliser efficacement des bibliothèques et modules Python pour des tâches avancées telles que la manipulation de données, la persistance de données, et le développement web avec Django, Être préparé à résoudre des problèmes informatiques complexes et à relever des défis professionnels en acquérant des compétences polyvalentes en Python.
Participants
Programmeurs et chefs de projets.
Prérequis
Avoir suivi la formation « Programmation PYTHON – Fonctions de base » ou en maitriser les concepts.
Pédagogie
La pédagogie est basée sur le principe de la dynamique de groupe avec alternance d'apports théoriques, de phases de réflexion collectives et individuelles, d'exercices, d'études de cas et de mises en situations observées. Formation / Action participative et interactive : les participants sont acteurs de leur formation notamment lors des mises en situation car ils s'appuient sur leurs connaissances, les expériences et mettront en œuvre les nouveaux outils présentés au cours de la session.
Spécificités pédagogiques de la session à distance
Formation dispensée en visio-formation avec un séquencement adapté. Configuration et accès à notre outil de visio-formation. Accès à la bibliothèque pédagogique virtuelle durant la formation afin de partager les exercices, contrôler les résultats obtenus et déployer l’ensemble du séquencement pédagogique. La durée exacte des modules définis ci-après est susceptible de varier en fonction de la vitesse d’appropriation des concepts enseignés de la part du stagiaire.
Public Visé
Collaborateurs - Développer ses compétences, s’affirmer comme expert dans son domaine, sécuriser son parcours professionnel ; Entreprises ou organisations - Accélérer les évolutions de carrière des collaborateurs, augmenter l’efficacité et l’employabilité des équipes… ;
Demandeur d’emploi - Développer son employabilité, favoriser sa transition professionnelle...
Certification
Formation éligible au CPF - Certification Programmer et automatiser des tâches avec Python (Tosa)
La certification Programmer et automatiser des tâches avec Python (Tosa) est propriété de l’Organisme Certificateur ISOGRAD et est enregistrée au numéro RS6962 auprès de France Compétence. adhara France est référencé par ISOGRAD depuis le 14/12/2022
Modalités de passage de la certification
Algorithme adaptatif : le niveau des questions s’adapte au niveau du candidat tout au long du déroulement du test
Scoring mathématique IRT (Item Response Theory) : score sur 1000
Typologies de questions : activités interactives
Format du test : 35 questions – 90 minutes
Référentiel de certification
Lien vers le référentiel de certification
Profil de l'intervenant
Consultant-formateur expert. Suivi des compétences techniques et pédagogiques assuré par nos services.
Accessibilité
Moyens techniques
Encadrement complet des stagiaires durant la formation. Espace d’accueil, configuration technique des salles et matériel pédagogique dédié pour les formations en centre. Remise d’une documentation pédagogique papier ou numérique à échéance de la formation.
Moyens techniques relatifs aux sessions à distance
Encadrement complet des stagiaires durant la formation. Accès à notre service technique durant l’animation pour toute limite rencontrée. Accès à l’espace de conversation instantané durant la session pour interagir avec le formateur et les participants. Transmission d’un email de contact pour réaction privée durant la session. Remise d’une documentation pédagogique papier ou numérique à échéance de la formation.
Méthodes d'évaluation des acquis
Un contact téléphonique est systématiquement établi avec le stagiaire ou la personne chargée de son inscription afin de définir le positionnement. Si besoin, un questionnaire est adressé pour valider les prérequis en correspondance et obtenir toute précision nécessaire permettant l’adaptation de l’action. Durant la formation, des exercices individuels et collectifs sont proposés pour évaluer et valider les acquis du stagiaire. La feuille d’émargement signée par demi-journée ainsi que l’évaluation des acquis sont adressées avec la facture.
Méthodes d'évaluation des acquis de la formation à distance
Un contact téléphonique est systématiquement établi avec le stagiaire ou la personne chargée de son inscription afin de définir le positionnement. Si besoin, un questionnaire est adressé pour valider les prérequis en correspondance et obtenir toute précision nécessaire permettant l’adaptation de l’action. Durant la formation, des exercices individuels et collectifs sont proposés pour évaluer et valider les acquis du stagiaire. La feuille d’émargement signée par demi-journée ainsi que l’évaluation des acquis sont adressées avec la facture.
Programme
Langage Python
- Appel de fonctions avec des aspects avancés : *args et **kwargs.
- Utilisation de lambda, filter et map pour des opérations fonctionnelles.
- Manipulation avancée des modèles de données : listes, dictionnaires, piles (stack) et files (queue).
- Passage avancé d'arguments aux fonctions.
Aspects Avancés de la Programmation Orientée Objets
- Programmation multithread : concepts de base, threads, synchronisation.
- Gestion des threads avec les modules thread et threading.
- Utilisation des threads dans le contexte de la programmation orientée objet.
- Gestion des aspects concurrentiels avec lock, mutex, sémaphores, etc.
- Échanges de données entre les threads.
- Notion de pool de threads.
Programmation Réseau avec les Sockets
- Rappels sur TCP/IP et concepts de base de l'API socket.
- Utilisation du module socket en Python.
- Sockets en mode connecté : TCP ou stream.
- Sockets en mode non connecté : UDP ou datagram.
- Combinaison des sockets avec les concepts de la programmation orientée objet.
Python et XML
- Concepts de base de XML.
- DOM (Document Object Model) et SAX (Simple API for XML).
- Parsing et gestion de fichiers XML avec DOM et SAX.
- Requêtage XPath et transformation avec XSL.
Gestion de fichiers XML selon SAX et selon DOM
- Requêtage Xpath et transformation avec XSL
- Programmation graphique
Programmation Graphique
- Tkinter : présentation et mise en oeuvre
- API wxPython : présentation et mise en oeuvre
- API Qt/UI : présentation et mise en oeuvre
Persistance de données
- Présentation des différentes API graphiques : Tkinter, wxPython, Qt/UI.
- Mise en œuvre de Tkinter.
- Présentation et utilisation de l'API wxPython.
- Présentation et mise en œuvre de l'API Qt/UI.
Persistance de Données
- Concepts de base de la sérialisation et de la désérialisation.
- Modèles de persistance, notamment Pickle.
- Persistance de données en texte avec JSON et XML.
Les Bases de Données
- Concepts SQL de base, tables, curseurs.
- Gestion de la base de données SQLite.
- Gestion de la base de données MySQL.
- Echanges HTTP et formulaires
- Bases de données, modèle et ORM
Développement Web avec Django
- Architecture d'applications web et concepts de base.
- Présentation du framework MVC Django.
- Installation et configuration minimale de Django.
- Modélisation d'applications Django et publication.
- Éléments du modèle MVC : vue, modèle et échanges HTTP.
- Échanges HTTP et gestion des formulaires.
- Bases de données, modèle et ORM avec Django.