Dernière mise à jour le 24/11/2024
Informations générales
Type de formation : Formation continue
Domaine : Développement
Filière : Open Source - LAMP : Linux Apache PHP
Rubrique : Langages : Python, Scala, GO,…
Formation éligible au CPF : Non
Formation Action collective : Non
Objectifs & compétences
A l’issue de la formation, le stagiaire sera capable d’utiliser les fonctionnalités avancées de Python ainsi que les principaux outils associés au langage, pour pouvoir répondre aux exigences de programmation.
Public visé
Ingénieurs et développeurs.
Pré-requis
Disposer de bonnes connaissances en développement Python.
Programme
Création d’une application de traitement de données avec utilisation de la parallélisation. Nous mettrons en place des pipelines de traitement avec un ensemble d’applications que nous allons packager en respectant les bonnes pratiques. A la fin de la formation, nous présentons Spark pour le traitement parallélisé et pour ceux qui veulent aller plus loin.
Chapitre 1 : Rappel de Python
• La programmation orientée objet en python
Encapsulation
Héritage
Polymorphisme
Atelier pratique : Présentation théorique avec code à l’appui.
Chapitre 2 : Aller plus loin avec la programmation objet
• Rappels sur la programmation objet : classes, instances, …
• Les propriétés • Les attributs de classe
• Les méthodes de classe et méthodes statiques
• L'introspection
• La classe object
• Les méthodes spéciales
• Le destructeur
• Héritage simple et héritage multiple
• Polymorphisme et duck typing
• La classe type
• Les métaclasses
• Abstract Base Class
• Rappels sur les exceptions
Atelier pratique : Mise en place d’un pipeline de traitement des données (plusieurs programmes connectés entre eux). Le premier programme sera en POO avec Flask, tandis que les suivants seront chargés de faire un nettoyage et une mise en forme des données avant de les sauvegarder en base.
Chapitre 3 : Fonctionnalités avancées
• Les générateurs
• Les décorateurs
• Les itérateurs
• Les context managers
• Les closures
Atelier pratique : En reprenant nos pipelines de traitement, nous les transformons en programme basé sur le paradigme fonctionnel pour éviter les effets de bord et comprendre l’utilité des différentes solutions.
Chapitre 4 : Packager et déployer une application Python
• Le gestionnaire de paquets pip
• Le Python Package Index (PyPI)
• Installer un module externe
• Le module setuptools
• Organiser son package
• Le MANIFEST et le README
• Packager son application au format wheel
• Déployer son package sur PyPI
Atelier pratique : Nous modifions nos précédentes applications pour pouvoir les partager sur un serveur de dépôt.
Chapitre 5 : Travailler avec un environnement virtuel
• L'intérêt d'utiliser un environnement virtuel
• Les solutions disponibles
• Installer un module dans un environnement virtuel
• Gérer efficacement les dépendances d'un projet
Atelier pratique : Comparaison et des outils tel que venv, etc. Nous mettons en place notre environnement virtuel et vérifions que les modules sont chargés au bon endroit.
Chapitre 6 : Optimisation et parallélisme
• Profilage de code avec timeIT et cProfile
• Les queues : créer des files synchronisées
• Le threading
• Le multiprocessing
Atelier pratique : Lancement de multithreading de nos pipelines et analyse des problématiques qui peuvent avoir lieu (problème de synchronisation, fuite de mémoire).
Chapitre 7 : Des librairies utiles
• De vrais scripts Python : le module argparse
• HTTP pour les humains : le module requests
• Parser du XML et du HTML : le module xml.etree
• Python pour la science : les modules Numpy et Matplotlib
• Intelligence artificielle : le module Scikit-Learn
Atelier pratique : Dans un environnement JupyterLab, nous testons les bibliothèques pour afficher des graphiques (Matplotlib).
Chapitre 8 : Découverte de Spark pour la manipulation des données - PySpark
• Utilisation de SparkSQL et des DataFrames pour manipuler des données
• Charger des données depuis Hadoop, depuis des fichiers CSV, texte, JSON…
• Transformer des données (création de DataFrames, ajout de colonnes, filtres…)
Atelier pratique : Exemple dans un notebook de l’utilisation de Spark et Panda.
Modalités
Jusqu'a 8 jours avant le début de la formation, sous condition d'un dossier d'insciption complet
Méthodes
Fin de formation : entretien individuel.
Satisfaction des participants : questionnaire de satisfaction réalisé en fin de formation.
Assiduité : certificat de réalisation.
Validations des acquis : grille d'evalution des acquis établie par le formateur en fin de formation.
Code de formation : AS943
Tarifs
Prix public : 2350 €
Tarif & financement :
Nous vous accompagnons pour trouver la meilleure solution de financement parmi les suivantes :
Le plan de développement des compétences de votre entreprise : rapprochez-vous de votre service RH.
Le dispositif FNE-Formation.
L’OPCO (opérateurs de compétences) de votre entreprise.
France Travail: sous réserve de l’acceptation de votre dossier par votre conseiller Pôle Emploi.
CPF -MonCompteFormation
Contactez nous pour plus d’information : contact@aston-institut.com
Lieux & Horaires
Durée : 28
heures
Délai d'accès :
Jusqu’à 8 jours avant le début de la formation
Prochaines sessions
Handi-accueillante
Accessible aux personnes en situations de handicap.
Pour toutes demandes, contactez notre référente,
Mme Rizlene Zumaglini
Mail : rzumaglini@aston-ecole.com