Python - Développement Objet   Version 2021

Resume

Issu du monde Open Source, Python est un langage réputé facile d'accès, simple et particulièrement portable. Il propose aux développeurs un ensemble d'outils et de fonctionnalités facilitant leurs tâches (piles de modules, pas de nécessité de compilation, débuggeur intégré, Shell de tests, documentation riche...). Mais avant de pouvoir bénéficier de tous ces avantages, les nouveaux développeurs Python devront s'approprier les notions essentielles de programmation objet et apprendre la syntaxe du langage. En suivant cette formation de 5 jours, les participants couvriront tous les sujets leur permettant de concevoir, développer, déployer et maintenir des applications Python.

 

Contenu du cours

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 oeuvre 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 oeuvre 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 multi-fenê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 avec Pyrex

  • 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 avec Pyrex

* Formation distanciel possible :

  • de votre entreprise

  • de chez vous

  • de nos locaux à Sophia Antipolis (équipement Cisco Webex Board)

Nos formations sont accessibles aux personnes en situation de handicap.

Un questionnaire envoyé en amont de la formation invite les participants à nous contacter s’ils ont besoins d’aménagements spécifiques en lien avec leur situation de handicap. Nous nous employons à rechercher, avec les personnes concernées, les moyens de compensation qui leur seront adaptés.

Pour en valider l'accès merci de nous contacter contact@formation-IT.org

Durée 

5 jours soit 35 heures

Prix public

2.690 € HT

Dates

  • 31 mai - 4 juin

  • 13 - 17 septembre

  • 22 - 26 novembre 

Public concerné

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

Objectifs pédagogiques

  • Maîtriser la syntaxe du langage Python

  • Acquérir les notions essentielles de la programmation objet

  • Savoir mettre en oeuvre les différents modules Python

  • Être en mesure de concevoir des interfaces graphiques

  • Pouvoir mettre en oeuvre les outils de test et d'évaluation de la qualité d'un programme Python

 

Pré requis 

Connaissances de base en programmation

Profil formateur 

Instructeur certifié par Python

Délai d’accès 

Se référer aux dates figurant au planning

Évaluations et sanctions de la formation

  • Quizz intermédiaires 

  • Lab technique en fin de module

  • Évaluation de satisfaction via un questionnaire pré formation, à chaud et à froid

  • Attestation de présence et de formation 

Sur le même thème