Formation perfectionnement à la programmation en Python

Résumé de la formation

  • Type de diplôme: Stage court
  • Domaines de compétences: Informatique et Sciences du numérique

Présentation

Présentation

Le langage Python

Python est un langage de programmation interprété simple et puissant.

Il est l'un des langages de programmation les plus intéressants du moment qui vous permet d'écrire des scripts simples mais aussi, grâce à ses nombreuses bibliothèques, de travailler sur des projets très ambitieux.

Facile à apprendre, il permet d'écrire du code concis et lisible. Il est maintenant utilisé lors de l'apprentissage de la programmation, en particulier au niveau BAC+1 et BAC+2. Les experts affirment qu’il est jusqu'à 5 fois plus concis que le langage Java ce qui augmente la productivité du développeur.

Cependant, pour bien tirer parti de Python et de ses bibliothèques, il est nécessaire d'avoir une bonne compréhension du langage et des outils associés (environnement de développement, tests, etc.)

Objectifs

Apprendre la programmation avancée en langage Python

  • Aborder les aspects avancés de l'environnement Python et les outils qu'il propose, cela afin d'intégrer les applications du SI d'une entreprise, et en améliorer ainsi son efficacité.
  • Utiliser python pour intégrer les différentes briques existantes d'un système.

 

Un exemple fil rouge sera utilisé pour illustrer et mettre en pratique les différents concepts et outils présentés.

 

Parcours de formation composé de :

Méthodes pédagogiques

Cour et programmation

Contrôle des connaissances

Évaluation d'un programme

 

 

Programme

Contenu de la formation

Jour 1

1.1 Déploiement d’application en python (conda, setup.py)
1.2 Création d’un squelette d’application complète
1.3 Mise en place d'un serveur web avec flask
1.4 Sérialisation de données

Jour 2

2.1 Architecture d'entreprise avec rabbitmq
2.2 Gestion du workflow de publication
2.3 Applications multiprocessus : tour des différentes solutions en python

Jour 3

3.1 Visualisation de données
3.2 Profiling et optimisation
3.3 Interface avec d'autres langages
════════

1.1  Déploiement d’application en python

    • Écriture d’un setup.py de déploiement d’une application et d’une bibliothèque
    • Comparaison pip vs conda
    • Mode développement vs mode production

1.2  Création d’un squelette d’application complète

    • Script de déploiement
    • Mise en place d’une base de données
    • Manipulation de la base de données à l’aide d’un ORM
    • Application :
        ◦ Base de données articles/auteurs
        ◦ Packaging de l’application avec conda
        ◦ Gestion d’une table article, une table auteur, et la table de jointure

1.3 Mise en place d'un serveur web avec flask

  • Utilisation des décorateurs avec flask. Défintion d’API avec swagger.
  • Application: rendre disponible par une API REST la base de données articles/auteurs
  • exemple d'utilisation des décorateurs python.

1.4 Sérialisation de données

    • Format json
    • Protobuff
    • Exemples avec pytest

2.1 Architecture d'entreprise avec rabbitmq

  • Présentation RabbitMQ
  • Échanges d'information et messagerie

2.2 Gestion du workflow de publication

    • Gestion de jobs
    • Workflow sur soumission/acceptation article
    • Relecture continue

2.3 Applications multiprocessus : tour des différentes solutions en python

    • Illustration sur la consommation en parallèle de plusieurs jobs rabbitmq

3.1 Visualisation de données

    • Utilisation des bibliothèques scientifiques numpy et pandas
    • Tracé de courbes et autre représentations 2D
    • Application : statistiques sur les productions d’articles

3.2 Profiling et optimisation

    • Production d'index automatique, profiling
    • Application: générer la liste par article des mots les plus employés

3.3 Interface avec d'autres langages

    • Utiliser une bibliothèque C dans un programme python
    • Application: génération de pdf

 

Responsable de la formation :

Xavier CREGUT

Pierre GAMBAROTTO
Guillaume BATY

 

Admission

Condition d'accès

Public concerné :

  • Développeur ou personne maitrisant la programmation de base en langage Python
  • Salariés, indépendants ou demandeurs d'emploi

 

Prérequis

  • Bonnes notions de base en programmation Python
  • La maitrise d'un autre langage de programmation (Java, PHP, C, C++) est conseillée

Contact(s)

Lieu(x) de la formation

  • Toulouse

Contact(s) administratif(s)

Conseiller Formation Qualifiante

Tél : 05 34 32 30 86

Email : qualifiant.fc @ inp-toulouse.fr

Plus d'infos

Public concernéFormation professionnelle

Durée du stage 3 jours

Prix intra-entreprise Nous contacter

Prix inter-entreprise 1620 € TTC

Date(s) de la formation Date à définir

Nous contacter

Toulouse INP Formation Continue

6 allée Emile Monso - BP 34038
31029 Toulouse Cedex 4
Ouvert du lundi au vendredi

08h30-12h30 / 13h30-16h30

05 34 32 31 08

Contacts

Le centre de formation continue et professionnelle des Grandes Écoles d'Ingénieurs de Toulouse INP

  • Logo MENESR
  • Logo Region
  • Logo UTFTMP
  • Logo INP
  • Logo INPT
  • Logo Ensat
  • Logo Enseeiht
  • Logo Ensiacet
  • Logo CTI
  • Logo CGE