~/tsk.formation
def python(): · poo

Langage Python,
du fondamental à la POO.

Du premier print() à l'écriture d'applications structurées avec classes, héritage, polymorphisme et gestion d'exceptions. Cette formation couvre 22 compétences certifiées : des bases du langage jusqu'à l'interaction avec le système d'exploitation via les modules os, sys, pathlib et subprocess.

Vingt-deux compétences,
regroupées en six axes.

Pour la lisibilité, les compétences attestées sont organisées en six axes thématiques. Chacun construit progressivement les fondations du suivant.

// AXE 01 Données & structures fondamentales

Manipulation des variables, types, structures composées et opérations élémentaires du langage.

  1. 01
    Manipuler correctement les variables en respectant les types de données et en réalisant des conversions si nécessaire pour identifier les données d'un programme.
  2. 02
    Manipuler des structures de données en utilisant les types composés (listes, tuples, dictionnaires) et leurs méthodes appropriées pour traiter des lots de données.
  3. 03
    Mettre en œuvre les structures de contrôle conditionnelles et itératives en écrivant des algorithmes complexes pour traiter des ensembles de données.
  4. 04
    Utiliser les entrées et sorties standards en exploitant les fonctions et concepts associés du langage (f-string, input(), format()) pour lire et écrire des données utilisateurs.

// AXE 02 Fonctions & organisation du code

Factorisation du code via les fonctions, organisation en modules et packages.

  1. 05
    Utiliser les fonctions de base du langage en réalisant des opérations élémentaires pour dénombrer des éléments, générer des nombres, etc.
  2. 06
    Invoquer une fonction après l'avoir déclarée en spécifiant correctement les paramètres pour factoriser des instructions de code.
  3. 07
    Créer un module dans une arborescence de package en utilisant plusieurs fonctions utilitaires pour organiser les fonctionnalités de code.
  4. 08
    Invoquer les fonctionnalités d'un module, telles que des fonctions et des classes, depuis un autre module en utilisant les mots clés adéquats pour utiliser des structures de code avancées.

// AXE 03 Programmation orientée objet

Déclaration de classes, méthodes, instanciation et encapsulation pour structurer le code.

  1. 09
    Déclarer une classe avec des attributs en prévoyant la structure de code pour les initialiser afin de pouvoir créer des objets.
  2. 10
    Déclarer des méthodes dans une classe à l'aide des mots clés appropriés et des paramètres nécessaires pour doter les objets de comportements spécifiques.
  3. 11
    Instancier une classe en initialisant ses attributs pour créer des objets.
  4. 12
    Encapsuler les attributs d'une classe en les rendant accessibles avec des propriétés pour garantir l'intégrité des objets.
  5. 13
    Déclarer des membres de classes en utilisant le décorateur @classmethod pour implémenter des fonctionnalités transverses.

// AXE 04 Héritage & polymorphisme

Création de hiérarchies de classes, spécialisation des comportements, exploitation du polymorphisme.

  1. 14
    Mettre en œuvre l'héritage en déclarant une ou plusieurs sous-classes pour créer une hiérarchie de classes et permettre la réutilisation d'objets dans une application.
  2. 15
    Redéfinir des méthodes dans des sous-classes en spécialisant leurs comportements pour les adapter aux besoins des sous-classes.
  3. 16
    Mettre en œuvre le polymorphisme en invoquant une même méthode sur des objets distincts pour exploiter les comportements spécifiques de ces objets.

// AXE 05 Gestion des exceptions

Détection, levée et traitement des erreurs applicatives, création d'exceptions personnalisées.

  1. 17
    Déclencher une exception en identifiant des préconditions non respectées à l'exécution d'une méthode ou d'une fonction pour notifier d'une erreur applicative.
  2. 18
    Mettre en œuvre un gestionnaire d'exception à l'aide des mots-clés try et except afin d'effectuer le traitement d'une erreur applicative.
  3. 19
    Déterminer l'ordre des gestionnaires d'exceptions en utilisant des blocs except multiples pour permettre de gérer plusieurs exceptions dans l'ordre approprié.
  4. 20
    Gérer les erreurs d'une application en créant des classes d'exceptions personnalisées pour améliorer la compréhension des dysfonctionnements.

// AXE 06 Bibliothèque standard & système

Interaction avec le système d'exploitation, manipulation du système de fichiers, exécution de commandes.

  1. 21
    Mettre en œuvre les modules sys et os de la bibliothèque standard en utilisant leurs fonctions basiques pour obtenir des informations sur le système d'exploitation.
  2. 22
    Manipuler le système de fichiers en utilisant le module pathlib de la bibliothèque standard pour lire et écrire des données dans des fichiers.
  3. 23
    Exécuter des commandes sur le système en mettant en œuvre les fonctions du module subprocess de la bibliothèque standard pour faciliter l'intégration de Python avec le système d'exploitation.

Le programme,
module après module.

Ossature type de la formation complète. Le rythme et la profondeur sont calibrés selon les acquis du stagiaire.

/programme-python/
01.py

Bases du langage

Installation, REPL, variables, types primitifs, conversions, opérateurs. Première écriture de scripts exécutables.

02.py

Structures composées

Listes, tuples, dictionnaires, ensembles. Méthodes spécifiques, parcours, compréhensions de listes.

03.py

Contrôle & itération

If / elif / else, while, for, break, continue. Algorithmes appliqués à des ensembles de données.

04.py

Entrées / sorties & formatage

input(), print(), f-strings, format(). Lecture de données utilisateurs, formatage des sorties.

05.py

Fonctions

Déclaration, paramètres positionnels et nommés, valeurs par défaut, *args, **kwargs, fonctions lambda.

06.py

Modules & packages

import, from, organisation en arborescence, fichier __init__.py. Bonnes pratiques de structuration.

07.py

Programmation orientée objet

Classes, attributs, méthodes, __init__, instanciation, encapsulation, propriétés, @classmethod et @staticmethod.

08.py

Héritage & polymorphisme

Création de sous-classes, super(), redéfinition de méthodes, héritage multiple, exploitation du polymorphisme.

09.py

Gestion des exceptions

try / except / else / finally, raise, blocs except multiples, création de classes d'exceptions personnalisées.

10.py

Modules système : os, sys, pathlib, subprocess

Informations système, manipulation moderne de fichiers via pathlib, exécution de commandes externes via subprocess.

11.py

Projet de synthèse & évaluation

Réalisation d'une application Python intégrant POO, exceptions et interaction système. Évaluation pratique.

Prêt·e à commencer ?

Chaque parcours est calibré sur mesure. Échangeons 30 minutes pour valider la formation idéale pour votre objectif.

Demander un devis