Formation : Python, programmation objet

Formation pratique - 5j - 35h00 - Réf. PYE
Prix : 3070 CHF H.T.

Python, programmation objet



Nouvelle formation

À l’issue de la formation, le participant sera capable d’utiliser les principales fonctionnalités du langage Python pour développer des applications multiplateformes.


INTER
INTRA
SUR MESURE

Formation pratique
Disponible en anglais, à la demande

Réf. PYE
  5j - 35h00
3070 CHF H.T.




À l’issue de la formation, le participant sera capable d’utiliser les principales fonctionnalités du langage Python pour développer des applications multiplateformes.


Objectifs pédagogiques
À l’issue de la formation, le participant sera en mesure de :
Comprendre les bases du langage Python et son écosystème
Acquérir les principes de la programmation objet
Comprendre et utiliser les fonctions et modules
Concevoir des interfaces graphiques
Utiliser les outils de test et d’évaluation de la qualité d’un programme Python

Public concerné
Développeurs, ingénieurs, chefs de projet proches du développement.

Prérequis
Avoir des connaissances de base en programmation (souhaitable en langage objet).
Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en faisant  ce test.

Méthodes et moyens pédagogiques
Travaux pratiques
Exercices pratiques et/ou études de cas.
Méthodes pédagogiques
60% pratique – 40% théorie. Pour optimiser le parcours d’apprentissage, des modules e-learning peuvent être fournis avant et après la session présentielle ou la classe virtuelle, sur simple demande du participant.

Modalités d'évaluation
Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de QCM, mises en situation, travaux pratiques…
Le participant complète également un test de positionnement en amont et en aval pour valider les compétences acquises.

Programme de la formation

1
Introduction à Python

  • Installation et configuration de l’environnement.
  • Structures de données de base.
  • Variables et portée.
  • Opérateurs et expressions.
  • Style et conventions Python (PEP 8).
  • Structures de contrôle avancées.
  • Définition et utilisation des fonctions.
  • Paramètres et retour multiples.
  • Gestion des erreurs et exceptions.
  • Modules et packages Python.
Travaux pratiques
Setup de l’environnement. Structures de contrôle. Fonctions et modularité. Gestion des erreurs.

2
Approche orientée objet

  • Classes et instances. Héritage et composition. Héritage multiple.
  • Polymorphisme et abstraction.
  • Interfaces et classes abstraites.
  • Properties et descripteurs.
  • Méthodes magiques.
  • Métaclasses et décorateurs.
  • Introspection et réflexion.
  • Hérit- Context managers et protocoles Python.
  • Design patterns avancés.
Travaux pratiques

3
Gestion d’erreurs avancée

  • Hiérarchie complète des exceptions.
  • Création d’exceptions personnalisées.
  • Logging avancé et configuration.
  • Debugging et troubleshooting.
  • Gestion des erreurs asynchrones.
  • Bonnes pratiques de robustesse.
Travaux pratiques
Exceptions personnalisées. Logging avancé. Debugging et tests.

4
Utilisation des librairies standard

  • Arguments et options en ligne de commande (argparse).
  • Expressions régulières (re).
  • Manipulation du système de fichiers (os, pathlib).
  • Modules importants (datetime, collections, itertools).
  • Bases de données avec sqlite3.
  • Modules sys et os pour l’interaction système.
  • Manipulation avancée de fichiers avec pathlib.
  • Collections spécialisées (collections, heapq).
  • Sérialisation avec pickle et json.
Travaux pratiques
Manipulation système. Collections avancées. RegEx et sérialisation.

5
Outils et utilitaires CLI

  • Arguments et options avec argparse.
  • Configuration avec configparser.
  • Logging en CLI.
  • Interfaces console riches.
  • Automation système.
  • Distribution d’outils CLI.
Travaux pratiques
Parsing d’arguments. Interface utilisateur. Packaging et distribution.

6
Tests et qualité

  • Tests unitaires avec unittest et pytest, Test Driven Development (TDD).
  • Documentation avec docstrings et type hints.
  • Génération de documentation avec Sphinx.
  • Mesure de couverture de code.
  • Intégration continue.
  • Outils d’analyse statique (pylint, flake8).
  • Conventions de style (PEP8).
  • Techniques de refactoring.
  • Revue de code et pair programming.
  • Mesures de complexité, automatisation des contrôles.
Travaux pratiques
Tests unitaires. Documentation. Couverture et CI. Analyse statique. Refactoring. Revue de code.

7
Interfaces

  • Introduction à Tkinter et ses alternatives.
  • Widgets fondamentaux et layouts.
  • Gestion des événements.
  • Pattern MVC en GUI.
  • Styles et thèmes.
  • Bonnes pratiques d’interface.
  • Widgets personnalisés
  • Styles et thèmes avancés, animation et effets visuels
  • Tests d’interfaces graphiques, accessibilité
  • Internationalisation
Travaux pratiques
Fondamentaux Tkinter. Widgets avancés. Architecture MVC. Widgets custom. Tests GUI. Internationalisation.

8
Interfaçage avec C

  • Types de données C et leur mapping. Introduction à ctypes et ses alternatives.
  • Appel de fonctions C depuis Python.
  • Gestion de la mémoire et pointeurs.
  • Wrapping de bibliothèques C.
  • Introduction à Cython et son écosystème.
  • Syntaxe et types statiques Cython.
  • Compilation et build process.
  • Optimisation de code Python existant.
  • Intégration avec C/C++.
  • Profiling et benchmarking, performance et debugging.
Travaux pratiques
Introduction à ctypes. Appels de fonctions. Performance et debug. Fondamentaux Cython. Optimisation. Integration C/C++.

9
Profilage et performance

  • Outils de profilage (cProfile, line_profiler).
  • Analyse de performance CPU et mémoire.
  • Optimisation algorithmique.
  • Benchmarking et métriques.
  • Memory leaks et garbage collection.
  • Patterns d’optimisation Python.
  • Architectures performantes.
  • Monitoring et observability.
  • Déploiement optimisé.
  • Scalabilité horizontale et verticale.
  • Tests de charge et stress.
Travaux pratiques
Profilage CPU. Mémoire et GC. Benchmarking. Architecture performante. Tests de charge. Monitoring production.


Avis clients
3,9 / 5
Les avis clients sont issus des évaluations de fin de formation. La note est calculée à partir de l’ensemble des évaluations datant de moins de 12 mois. Seules celles avec un commentaire textuel sont affichées.
BRUNO R.
14/09/26
4 / 5

Formation très dense. Beaucoup de concept à assimiler. Pour un débutant comme moi c’était difficile à suivre. Peut-être alléger la partie théorique un chouia.
LUCILE R.
14/09/26
3 / 5

Formation destinée aux « Développeurs, ingénieurs… », mais niveau du groupe très hétérogène. 2 jours ont été consacrés à des bases de programmation qui auraient dû être acquises via un digital learning pré-formation, pourtant indisponible. Le niveau des participants n’est pas vérifié en amont. Cela a limité la profondeur sur les notions clés, avec beaucoup de théorie rapide, et certains modules n’ont pas pu être abordés. Aucun digital learning post-formation non plus.
FREDERIC T.
14/09/26
5 / 5

énormément de concepts, beaucoup de connaissances et d’outils à découvrir et maîtriser, enseignement très intéressant, distillé avec beaucoup de pédagogie.




Ce programme est une création originale, conçu par les équipes pédagogiques d'ORSYS Formation. Toute reproduction, représentation, adaptation ou exploitation, totale ou partielle, sans autorisation préalable écrite d'ORSYS, est strictement interdite. ORSYS se réserve le droit d'engager toute action nécessaire à la protection de ses droits de propriété intellectuelle.

Dates et lieux
Sélectionnez votre lieu ou optez pour la classe à distance puis choisissez votre date.
Classe à distance

Dernières places
Date garantie en présentiel ou à distance
Session garantie

CLASSE À DISTANCE
2026 : 23 nov., 14 déc.

2027 : 15 mars, 15 mars, 10 mai, 21 juin, 21 juin, 30 août, 30 août, 25 oct., 6 déc., 6 déc.

GENÈVE
2027 : 10 mai, 30 août



Ce programme est une création originale, conçu par les équipes pédagogiques d'ORSYS Formation. Toute reproduction, représentation, adaptation ou exploitation, totale ou partielle, sans autorisation préalable écrite d'ORSYS, est strictement interdite. ORSYS se réserve le droit d'engager toute action nécessaire à la protection de ses droits de propriété intellectuelle.