Réservez les formations disponibles partout en France !

location-dot
location-dot
location-dot
À partir de
location-dot
image OF
  1. Accueil
  2. Numérique
  3. Développement et langage informatique
  4. Python
  5. Python - Perfectionnement
Python - Perfectionnement

Python - Perfectionnement

Qualiopi
En centre
Éligible CPF
Sélectionnez une session :

Choisissez une date pour pouvoir réserver !

Objectifs
Programme

A l'issue de cette formation, vous serez capable de :

  • Décrire les subtilités du langage Python et en tirer parti pour écrire des programmes bien structurés, robustes et efficaces
  • Gérer le développement en langage Python, de façon approfondie.

Jour 1

Langage

  • Appel de fonctions aspects avancés : *args, **kvargs
  • Lambda, filter et map
  • Utilisation avancée des modèles de données : list, dic, stack, queue
  • Utilisation avancée des fonctions : passages d'arguments
  • Aspects avancés de la Programmation Orientée Objets (POO)

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un programme avec exploitation avancée des collections de Python
  • Changement des types de passage d'argument

Programmation multithread

  • Concepts de bases : programme, thread, synchronisation
  • Gestion de threads : modules thread, threading
  • Threads et la Programmation Orientée Objets
  • Gestion des aspects concurrentiels : lock, mutex, sémaphores...
  • Threads et échanges de données
  • Notion de pool de threads

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un programme lançant plusieurs threads
  • Synchronisation de ces threads pour obtenir un résultat dépendant de traitements parallèles
  • Protection des données globales du programme écrit grâce aux mutex et lock
  • Ajout d'un sémaphore pour l'accès à des ressources en nombre restreint
  • Echange de données entre threads lancés
  • Travail sur la notion de pool de threads disponibles

Programmation réseau avec les sockets

  • Rappels sur le TCP/IP et concepts de base de l'API socket
  • Utilisation du module socket
  • Socket en mode connecté : TCP ou stream
  • Socket en mode non connecté : UDP ou datagram
  • Les sockets et la Programmation Orientée Objets
  • Combinaison des sockets et des threads

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un programme serveur puis client échangeant des données via les sockets en TCP puis UDP
  • Démonstration de l'avantage du multithreading dans ce cas pour les serveurs

Jour 2

Python et XML

  • Concepts de base
    • DOM (Document Object Model)
    • SAX (Simple API for XML)
    • Parser...
  • Gestion de fichiers XML selon SAX et selon DOM
  • Requêtage Xpath et transformation avec XSL

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un programme de lecture d'un flux de données de taille importante via SAX
  • Mise à jour d'une structure via DOM

Programmation graphique

  • Concept de programmation événementielle
  • Tkinter : présentation et mise en oeuvre
    • Les widgets standards
    • Mise en page avec grid et pack
  • Présentation d'autres bibliothèques graphiques : PyGTK, PyQT

Exemples de travaux pratiques (à titre indicatif)

  • Ecriture d'un programme utilisant Tkinter d'échange utilisateur avec l'interface graphique

Persistance de données

  • Concepts de base : sérialisation / désérialisation
  • Différents modèles de persistance : Pickle
  • Persistance texte avec JSON et XML

Les bases de données

  • Concepts de base : SQL, tables, curseur
  • Gestion de la base de données SQLite et MySQL
  • Présentaion du NoSQL

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un programme qui sérialise un flux JSON
  • Ecriture d'un programme d'accès à une base de données MySQL
  • Mise au point de requêtes de lecture, inertion, mise à jour depuis Python

Jour 3

Intégration Python/C et Python/Java

  • Présentation générale et mise en oeuvre de SWIG
  • Python/C et les packages
    • Natifs C
    • Natifs Java

Exemple de travaux pratiques (à titre indicatif)

  • Création d'un programme interfaçant avec des API écrites en C et en Java

Mise au point de programme

  • Débogage : exécution pas à pas
  • Modes : verbose et trace
  • Analyse des performances et profiling

Certification (en option, hors inscription via le CPF)

  • Prévoir l'achat de la certification en supplément (ne concerne pas les inscriptions via le CPF pour lesquelles la certification est incluse)
  • L'examen (en français) sera passé soit à la fin de la formation, soit ultérieurement dans nos centres de formation
  • Il est composé de 35 questions, s'effectuera en ligne et durera en moyenne 1h30
  • A l'issue de la certification, le candidat se verra attribuer un score (0 à 1000), correspondant à un niveau (Initial / Basique / Opérationnel / Avancé / Expert) :
    • En deçà du score de 551 points, le candidat se verra attribuer une attestation de passage de la certification. Ces niveaux Initial et Basique ne valident cependant pas l'obtention de la certification
    • Les niveaux Opérationnel, Avancé et Expert permettent, quant à eux, au titulaire de la certification de faire valoir ses compétences et d'attester de son opérationnalité selon son profil et l'emploi qu'il exerce
Public visé

Développeurs, administrateurs et architectes.

Prérequis

Avoir suivi le cours PYT "Python - Par la pratique" ou avoir les compétences équivalentes.

Sanction visée
TOSA Programmer et automatiser des tâches avec Python

Choisissez une date pour pouvoir réserver !

Autres formations disponibles :
formation
Cayenne (97300)
PYTHON
Prochaines sessions disponibles :01 août01 sept.01 oct.01 nov.
Qualiopi
En centre
Éligible CPF
Prochaines sessions disponibles :04 août11 août18 août25 août
Qualiopi
En visio
Non éligible CPF
Prochaines sessions disponibles :04 août11 août18 août25 août
Qualiopi
En visio
Non éligible CPF
Prochaines sessions disponibles :10 sept.03 nov.03 déc.
Qualiopi
En centre
Non éligible CPF
formation
Labège (31670)
Pandas avancé
Prochaines sessions disponibles :15 sept.16 mars
Qualiopi
En centre
Non éligible CPF
logo ouformer
Réalisation :Definima
Utilisation des cookies

Nous utilisons des cookies pour vous fournir l'ensemble de nos services, notamment la recherche et les alertes. En acceptant, vous consentez à notre utilisation de ces cookies.

Tout refuser
Tout accepter