Formation Python, programmation Objet

Python est un langage de programmation multi plateforme permettant le développement d’une grande variété d’applications. Ce stage vous permettra d’en maîtriser sa syntaxe, ses principaux mécanismes et son paradigme Objet. Vous découvrirez les principales fonctionnalités de la bibliothèque de modules standards, implémenterez des interfaces graphiques, accéderez aux données d’une base tout en appliquant sur la chaîne de développement les outils permettant de tester et d’évaluer la qualité du code produit.

PROGRAMME DE 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

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)

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

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

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

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

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 avec Pyrex
  • L’interpréteur Python dans C
  • L’utilisation du profileur de code

Conclusion

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

Objectifs pédagogiques

  • 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

Participants

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

Prérequis

  • Connaissances de base en programmation

Les cours ont lieu de 9h à 12h30 et de 14h à 17h30
Les participants sont accueillis à partir de 8h45

Durée : 4 jours
Réf : FPYO
Prix  2020 : 2250 € H.T.
Pauses et déjeuners offerts

Cette formation vous intéresse

Notre équipe est à votre écoute pour étudier vos besoins en formation et vous proposer les meilleures solutions.
Contactez-nous pour fixer un rendez-vous ou décrivez-nous votre projet. Nous prendrons contact avec vous rapidement.