Développement C/C++ Perl et Python

Python, programmation Objet

Objectifs de la formation

  • Maîtriser la syntaxe du langage Python
  • Acquérir les notions essentielles de la programmation objet
  • Connaître et mettre en œuvre les différents modules Python
  • Concevoir des interfaces graphiques
  • Mettre en œuvre les outils de test et d’évaluation de la qualité d’un programme Python


Programme de la formation

Syntaxe du langage Python

  • Les identifiants et les références. Les conventions de codage et les règles de nommage.
  • Les blocs, les commentaires.
  • Les types de données disponibles.
  • Les variables, l’affichage formaté, la portée locale et globale.
  • La manipulation des types numériques, la manipulation de chaînes de caractères.
  • La manipulation des tableaux dynamiques (liste), des tableaux statiques (tuple) et des dictionnaires.
  • L’utilisation des fichiers.
  • La structure conditionnelle if/elif/else.
  • Les opérateurs logiques et les opérateurs de comparaison.
  • Les boucles d’itérations while et for. Interruption d’itérations break/continue.
  • La fonction range.
  • L’écriture et la documentation de fonctions.
  • Les lambda expression.
  • Les générateurs.
  • La structuration du code en modules.

Travaux pratiques

Installation et prise en main de l’interpréteur Python.

Approche Orientée Objet

  • Les principes du paradigme Objet.
  • La définition d’un objet (état, comportement, identité).
  • La notion de classe, d’attributs et de méthodes.
  • L’encapsulation des données.
  • La communication entre les objets.
  • L’héritage, transmission des caractéristiques d’une classe.
  • La notion de polymorphisme.
  • Association entre classes.
  • Les interfaces.
  • Présentation d’UML.
  • Les diagrammes de classes, de séquences, d’activités…
  • Notion de modèle de conception (Design Pattern).

Travaux pratiques

Modélisation en UML d’un cas d’étude simple.

Programmation Objet en Python

  • Les particularités du modèle Objet de Python.
  • L’écriture de classes et leur instanciation.
  • Les constructeurs et les destructeurs.
  • La protection d’accès des attributs et des méthodes.
  • La nécessité du paramètre Self.
  • L’héritage simple, l’héritage multiple, le polymorphisme.
  • Les notions de visibilités.
  • Les méthodes spéciales.
  • L’introspection.
  • L’implémentation des interfaces.
  • Les bonnes pratiques et les modèles de conception courants.
  • L’utilisation du mécanisme d’exception pour la gestion des erreurs.

Travaux pratiques

Pratique des différents concepts Objet au travers de l’implantation de l’étude de cas.

Utilisation StdLib

  • Les arguments passés sur la ligne de commande.
  • L’utilisation du moteur d’expressions régulières Python avec le module « re », les caractères spéciaux, les cardinalités.
  • La manipulation du système de fichiers.
  • Présentation de quelques modules importants de la bibliothèque standard : module « sys », « os », « os.path ».
  • Empaquetage et installation d’une bibliothèque Python.
  • Les accès aux bases de données relationnelles, le fonctionnement de la DB API.

Travaux pratiques

Mise en œuvre de modules Python : expressions régulières, accès à une base de données,

Outils QA

  • Les outils d’analyse statique de code (Pylint, Pychecker).
  • L’analyse des comptes rendus d’analyse (types de messages, avertissements, erreurs).
  • Extraction automatique de documentation.
  • Le débogueur de Python (exécution pas à pas et analyse post-mortem).
  • Le développement piloté par les tests.
  • Les modules de tests unitaires Python (Unittest…).
  • L’automatisation des tests, l’agrégation de tests.
  • Les tests de couverture de code, profiling.

Travaux pratiques

Utilisation des outils pylint et pychecker pour la vérification d’un code Python. Mise en œuvre de tests unitaires.

Création IHM TkInter

  • Les principes de programmation des interfaces graphiques.
  • Présentation de la bibliothèque TkInter.
  • Les principaux conteneurs.
  • Présentation des widgets disponibles (Button, Radiobutton, Entry, Label, Listbox, Canvas, Menu, Scrollbar, Text…).
  • Le gestionnaire de fenêtres.
  • Le placement des composants, les différents layouts.
  • La gestion des événements, l’objet event.
  • Les applications multifenêtres.

Travaux pratiques

Conception d’une interface graphique avec la bibliothèque Tkinter.

Interfaçage Python/C

  • Présentation du module Ctypes.
  • Le chargement d’une librairie C.
  • Appel d’une fonction.
  • La réécriture d’une fonction Python en C avec l’API Python/C.
  • La création de modules C pour Python.
  • L’interpréteur Python dans C.
  • L’utilisation du profileur de code.

Travaux pratiques

Appel de fonctions écrites en C depuis Python. Création de modules C pour Python.

Conclusion

  • Analyse critique de Python.
  • L’évolution du langage.
  • Eléments de webographie et de bibliographie.

MOYENS PÉDAGOGIQUES ET TECHNIQUES D’ENCADREMENT DES FORMATIONS

Modalités pédagogiques :

  • Évaluation des besoins et du profil des participants.
  • Apport théorique et méthodologique : séquences pédagogiques regroupées en différents modules.
  • Contenus des programmes adaptés en fonction des besoins identifiés pendant la formation.
  • Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de travaux pratiques, étude de cas et mise en situation.
  • Méthodes expositive, active et participative.
  • Réflexion et échanges sur cas pratiques.
  • Retours d'expériences.
  • Corrections appropriées et contrôles des connaissances à chaque étape, fonction du rythme de l’apprenant mais également des exigences requises au titre de la formation souscrite.

Éléments matériels :

  • Mise à disposition des outils nécessaires au bon déroulement des travaux pratiques.
  • Support de cours au format numérique projeté sur écran et transmis au participant en fin de la formation.

Référent pédagogique et formateur :

  • Chaque formation est sous la responsabilité du directeur pédagogique de l’organisme de formation.
  • Le bon déroulement est assuré par le formateur désigné par l’organisme de formation.
MOYENS PERMETTANT LE SUIVI ET L’APPRÉCIATION DES RÉSULTATS
  • Feuilles de présences signées des participants et du formateur par demi-journée.
  • Attestation de fin de formation mentionnant les objectifs, la nature et la durée de l’action et les résultats de l’évaluation des acquis de la formation.
Please login to get access to the quiz
Python, perfectionnement (Prev Lesson)
(Next Lesson) Programmation en C
Back to Développement C/C++ Perl et Python
Public

Développeurs, ingénieurs, chefs de projets proches du développement.

Pré-requis

Connaissances de base en programmation.

Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en effectuant le test disponible en bas de cette page.

Lieu de formation

Intra-entreprise/à distance

Dates ou période

À définir. Nous consulter

Tarif

Sur devis. Merci de nous contacter

Modalités

Pour s’inscrire à notre formation, veuillez nous contacter par mail ou téléphone.

Démarrage de la formation sous deux semaines (délai indicatif).

Nous contacer
Informations complémentaires

Pour toute réclamation, aléas ou difficultés rencontrés pendant la formation, veuillez prendre contact avec notre organisme par téléphone ou par e-mail. Nous mettrons tout en œuvre pour trouver une solution adapter.

Formation synchrone, réalisée à distance en visioconférence via l’application Microsoft Teams ou en présentiel dans les locaux du client.