Devis Demander un devis
star--3

Développer en langage Python orienté objet - préparant à la certification API Society - RS6301 avec SAS ÉCOLE ADR TECH

Formation 100 % en présentiel ou à distance en face-à-face et adaptée à votre projet

Compétence générale: Acquérir les fondamentaux de la programmation en langage Python pour le développement orienté objet (syntaxe, types de données, fonctions, modules, paquets, exceptions, fichiers).

À propos de cette formation

Cormelles-le-Royal

14

À partir de 2 187€ HT

0 jour

83 heures

Action de formation

Éligible CPF

Éligible OPCO

En savoir plus

Objectifs pédagogiques
  • C1 - Maitriser la syntaxe et la sémantique de Python afin d'écrire des programmes fonctionnels
  • C2 - Connaître les types de données fondamentaux (nombre, chaine de caractères, tuple, liste et dictionnaire) et les méthodes associées afin de ne pas ré-écrire des fonctionnalités déjà fournies par Python
  • C3 - Choisir le bon type en fonction de l'information à manipuler et du traitement à réaliser afin de traiter efficacement et de manière claire des grands volumes de données
  • C4 - Connaître les fonctions intégrées de Python (sort, len, abs, chr, ord ...) afin d'accéder aux fonctionnalités associées
  • C5 - Maitriser les structures de contrôle conditionnelles et répétitives afin d'automatiser un traitement de données
  • C6 - Utiliser l'imbrication des différentes structures de contrôle en vue d'appliquer un traitement à un jeu de données
  • C7 - Créer des fonctions spécifiques utilisant les fonctions et les classes élémentaires génériques fournies par le langage
  • C8 - Importer des modules existants et exploiter les fonctions et classes incluses
  • C9 - Créer son propre module Python afin d'écrire du code ré-utilisable depuis un autre programme
  • C10 - Créer son propre paquet Python afin de structurer plusieurs modules dans une hiérarchie de répertoires et d'espaces de noms
  • C11 - Connaitre le principe des espaces de noms (global, local, pré-défini) afin de comprendre la portée des variables et de segmenter la mémoire en vue d'écrire des programmes sécurisés
  • C12 - Documenter l'utilité et l'usage d'une fonction, d'un module et d'un paquet en vue d'améliorer sa qualité et sa ré-utilisabiilité
  • C13 - Lire et écrire un fichier en format texte ou en format binaire afin d'appliquer un traitement sur les données lues ou écrites
  • C14 - Connaître les grands principes de la programmation orientée objet (encapsulation, héritage ...) et les notions associées (constructeur, attributs, méthodes ...) en vue de les mettre en oeuvre en Python afin d'écrire des programmes modulaires et évolutifs
  • C15 - Définir ses propres classes d'objet en vue de créer des objets correspondants parfaitement aux données manipulées
  • C16 - Documenter une classe et ses méthodes en vue d'améliorer sa qualité et sa ré-utilisabiilité
  • C17 - Intercepter une exception (erreur) qui s'est produite en vue de la gérer pour que le programme continue de fonctionner normalement
  • C18 - Lever une exception afin de remonter une erreur via le mécanisme de propagation des exceptions et pouvoir ainsi la gérer à un endroit différent du programme
  • C19 - Interagir avec l'interpréteur Python ou avec le système de fichiers (modules sys, os, os.path)
  • C20 - Ecrire des expressions rationnelles (expressions régulières) afin de réaliser des recherches de correspondances, des remplacements, des extractions très sophistiquées sur les chaines de caractères
  • C21 - Transposer en langage Python un algorithme décrit dans un cahier des charges afin de mettre en oeuvre le besoin exprimé
  • C22 - Mettre en oeuvre les bonnes structures de données et écrire les fonctions adéquates pour concevoir des algorithmes d'une certaine complexité
  • C23 - Choisir les modules Python pertinents et savoir en mesurer les performances pour écrire des programmes manipulant rapidement de grands volumes de données
  • C24 - Respecter les règles de nommage Python décrites dans le PEP0008 et savoir utiliser un analyseur syntaxique de code afin d'écrire des programmes de qualité lisibles par d'autres développeurs
  • C25 - Identifier le code pertinent à tester et écrire des tests unitaires afin de réaliser des programmes stables et durables
Contenu de la formation
  • Initiation au langage de programmation Python
    • Pourquoi Python ?
    • Principaux domaines d’application
    • Historique (auteur, date de la première version)
    • Versions de Python (branches 2 et 3)
    • Caractéristiques du langage (multi-paradigme, typage dynamique fort, syntaxe claire)
    • Panorama de la bibliothèque standard
    • Modules d'extension et commande pip
    • Principe de fonctionnement de l'interpréteur (bytecode PYC)
    • Interpréteur officiel CPython et autres interpréteurs (micropython, brython, pypy, numba)
    • Ressources internet et documentations (site Internet python.org)
    • Fonction help() et chaînes documentaires
    • Principe de l'indentation pour délimiter les blocs d'instruction
    • Commentaire
    • Mots-clés réservés
    • Conventions de nommage
    • Style de codage et formatage
    • Interpréteur interactif
    • Programme autonome
    • Fonctions intégrées élémentaires : print(), type(), input(), len()
  • Types de données non-modifiables
    • Utilité des types non-modifiables (optimisation mémoire), fonctions id() et hash(), opérateur is
    • Principe des séquences ordonnées (str, tuple et list) et collections (dict, set) Booléen (bool), objets True et False
    • Nombre (int, float, complex), constructeurs, opérateurs >>, <<, |, &, ^, //, % et **
    • Notations exponentielle, binaire, octale et hexadécimale, fonctions hex(), oct(), bin(), chr(), ord()
    • Chaîne de caractères unicode (str), définition avec simple et double guillemets, chaines multilignes avec triple simple ou double guillements, mode raw, constructeur
    • Indiçage positif et négatif, tranche de valeurs (slice), opérateurs +, * et in, itération
    • Méthodes incontournables de str : split(), replace(), lower(), upper(), strip(), join()
    • Chaîne de caractères formatée (%s, %d, %f), méthode format() et f-string
    • Principe du depacking de variables
    • Tableau d'octets (bytes), constructeur
    • Tuple (tuple), constructeur, indiçage, itération, opérateurs +, * et in, méthodes count() et index()
    • Objet None et fonction repr()
  • Types de données modifiables
    • Listes (list), constructeur, indiçage, intération, opérateurs +, * et in, méthodes append(), insert(), fonction del(), méthodes sort(), reverse(), remove(), extend(), pop(), clear()
    • Listes : manipulation de références, copie superficielle via la méthode copy() ou l'indiçage [:], copie en profondeur avec la fonction deepcopy() du module copy
    • Fonction sorted()
    • Principe de fonctionnement des objets itérables
    • Fonctions reversed() et range()
    • Dictionnaires (dict), constructeur, indiçage, opérateur in, fonction del(), méthodes keys(), values(), items(), update(), get()
    • Dictionnaires : manipulation de références, copie superficielle via la méthode copy(), copie en profondeur avec la fonction deepcopy() du module copy Set (set), constructeur, opérateurs - | & et ^
  • Structures conditionnelles et répétitives
    • Structure conditionnelle if ... elif ... else
    • Opérateurs ternaire et morse
    • Structure répétitive while
    • Structure répétitive for
    • Instructions break et continue
    • Fonction enumerate()
    • Bloc else sur structure répétitive
    • Liste en intension (comprehension list), dictionnaire en intension (comprehension dict)
  • Fonctions, modules et paquets
    • Définition et appel d'une fonction
    • Espace de noms local, global, pré-défini (__builtins__) et fonction dir()
    • Retourner des valeurs, instruction return
    • Fonctions génériques (duck typing)
    • Valeurs par défaut
    • Passage par étiquette
    • Nombre d'arguments arbitraire (*args, **kwargs)
    • Fonctions anonymes (lambda)
    • Fonctions eval(), exec(), map() et filter()
    • Importation de modules
    • Création d'un module
    • Bloc if __name__ == ''__main__''
    • Importation de paquet
    • Création d'un paquet (__init__.py)
    • Instruction yield
  • Manipulation des fichiers
    • Fonction open() et méthode close()
    • Méthodes readline() et readlines()
    • Objet itérable
    • Instruction with avec les fichiers
    • Méthodes read() et write()
    • Méthodes tell() et seek()
    • Méthode writelines()
    • Modules complémentaires : struct, csv, json, xml
    • Sérialisation avec le module pickle
    • Sérialisation avec le module shelve
  • Programmation Orientée Objet
    • Concepts fondamentaux de la POO (séparation du code, encapsulation, héritage)
    • Notions de classe d'objet, d'objet (instance), d'attribut et de méthode
    • Définition d'une classe d'objet
    • Instanciation d'objets, fonction isinstance()
    • Constructeur (__init__)
    • Attributs et méthodes
    • Le paramètre self
    • Surcharge d'affichage (__str__)
    • Surcharge d'opérateurs (__eq__, __add__)
    • Propriété (fonction spéciale property), accesseur et mutateur
    • Espaces de noms global, de l'objet, de la classe
    • Variable de classe
    • Constructeur à nombre d'arguments arbitraire (*args, **kwargs)
    • Agrégation / Composition
    • Héritage de classe (généralisation), fonctions issubclass(), super() et méthode mro()
  • Exceptions
    • Principe de fonctionnement
    • Exceptions pré-définies et arbre d'héritage
    • Instructions try ... except ... else ... finally
    • Propagation des exceptions
    • Déclenchement d'exceptions
    • Définition d'une exception
  • Modules de la bibliothèque standard
    • Interaction avec l'interpréteur : module sys
    • Interaction avec le système d'exploitation : modules os et pathlib
    • Interaction avec le système de fichiers : module os.path
    • Expressions rationnelles : module re, fonctions search(), match(), split() et sub()
    • Tests unitaires : instruction assert, module unittest
    • Tour d'horizon d'autres modules intéressants de la bibliothèque standard : datetime, math, timeit, urllib, collections, csv, json, sqlite3

L'organisme de formation

star--1

Prochaines sessions

  • Du 25 nov. 2024 au 3 déc. 2024 Nonant

Public concerné

  • Tout public
  • Nos formations et locaux sont accessibles aux personnes en situation de handicap.
  • Notre référent handicap vous accompagne afin de répondre au plus près à vos besoins – accessibilite@ecole-adr-tech.fr
Prérequis
  • Avoir une pratique de l’ordinateur, savoir lire et écrire le français.
  • Connaître les bases de l'algorithmie et un langage de programmation

Conditions d'accès

Accessibilité

Nos formations et locaux sont accessibles PSH ; Notre référent handicap vous accompagne afin de répondre à vos besoins – accessibilite@ecole-adr-tech.fr. Il existe des systèmes de passage des tests adaptés pour les personnes en situation de handicap.

Capacité

1 à 3 places

Délai d'accès

4 semaines

Diplôme / Certification

  • Niveau de sortie : RS6301 - Développer en langage Python orienté objet - Certification (dont CQP) ou habilitation enregistrée au répertoire spécifique (RS)
  • En maîtrisant les compétences définies comme objectifs pédagogiques, l'apprenant sera capable de réaliser les activités définies dans le référentiel: A1 - Écrire un programme Python structuré en fonctions A2- Importer et utiliser un module existant A3 - Écrire un module Python en vue de le réutiliser dans d'autres programmes et le partager avec d'autres développeurs A4 - Créer un paquet Python pour structurer un logiciel complexe A5 - Ouvrir un fichier, lire son contenu, écrire un fichier A6 - Écrire un programme orienté objet A7 - Réaliser des traitements complexes sur les chaînes de caractères A8 - Écrire un programme respectant les règles de nommage Python et intégrant des tests unitaires
  • Organisées par l’organisme certificateur, les épreuves de la certification sont composées d’un questionnaire théorique évaluant les connaissances sur les fondamentaux du langage Python et d’exercices pratiques évaluant les compétences de programmation du candidat. A l’aide du logiciel API Cert permettant des captations audio vidéo durant les épreuves d’évaluation, cette certification est passable à distance et en asynchronie. Le jury est composé d’un surveillant qui garantit l’identité du candidat et l’absence de fraudes grâce aux captations, d’un professionnel développeur certifié qui corrige les exercices programmés par le candidat sans accéder aux captations afin de préserver l’anonymat des candidats et l’équité de la correction et d'un président qui attribue ou non la certification selon les comptes rendus du surveillant et du correcteur. Des critères et modalités d'évaluation des acquis sont définies pour permettre aux candidats de mettre en œuvre chacune les compétences par la réalisation des activités du référentiel.
  • RS6301 - Développer en langage Python orienté objet Répertoriée au Répertoire spécifique Date d'échéance de l’enregistrement 24-04-2025 Certificateur : API SOCIETY SIRET : 83381699400010 Cette certification s'adresse aux personnes recherchant à attester un niveau de programmation en langage Python : développeurs informatiques souhaitant attester une compétence complémentaire à leur métier, et aux autres métiers souhaitant attester une compétence transversale : analyste de données, biostatisticien, cartographe, océanologue, trader, chercheur ...
  • Valable pour 3 ans

Plus qu'une formation !

Équipe pédagogique
Formateur PYTHON certifié mention Expert ou Instructeur
Objectifs pédagogiques
  • Cette formation se déroule 100% en présentiel ou à distance en face-à-face;
  • Vous êtes toujours accompagné par au moins un formateur dans la salle de formation ou en face-à-face à distance;
  • Des groupes de maximum 6 personnes ou chaque apprenant avance à son rythme ;
  • Des outils pédagogiques numériques ;
  • Des sessions d’animation pédagogique et des activités pratiques adaptées aux domaines professionnels des apprenants ;
  • Un livret aide-mémoire vous sera offert afin de vous guider pendant et après la formation ;
  • Des ressources pédagogiques en format numérique seront mises à votre disposition à long terme.
  • Horaires et passage de tests adaptés aux personnes en situation de handicap
  • En présentiel, chaque participant dispose d’un ordinateur performant et ergonomique (écran 24 ") dans une salle aménagée ;
Demander un devis

D'autres formations qui pourraient vous intéresser

Des Organismes de formation de confiance !

Nous recensons aujourd’hui des formations dans plus d’une 100ène de catégories et sous catégories afin d’être le plus représentatif par rapport au besoin en compétences des entreprises.

Comparer
Comparez jusqu'à 3 cours