Description
INSTALLATION ET PRISE EN MAIN Connaître les différentes versions Détails de l'arborescence de fichiers de l'installation Python L'interpréteur Python L'interpréteur interactif Idle Python Les différents outils de développement (PyCharm, Pydev, Spider) INITIATION À LA SYNTAXE Utilisation de l'indentation Les types de données élémentaires (Manipuler les nombres, les chaînes, les booléens) Les types de données complexes (Utilisation de listes/tableaux, Les listes et l'utilisation des "List Comprehensions", Utilisation de dictionnaires, de tuples, de sets) Les opérateurs (+, in, and, or, ...) Les différents types d'instructions (if/else, for/while, break/continue, assert) Mise en oeuvre de fonctions (Gestion des paramètres, Mise en oeuvre de fonction lambda, d'un générateur) Scripts exécutables INTRODUCTION À LA PROGRAMMATION ORIENTÉE OBJET Pourquoi programmer objet (Concept d'encapsulation, d'héritage) Mise en oeuvre de classes (Définition et instanciation d'une classe, Définition d'attributs de classe, Définition de méthodes de classe, Constructeurs et destructeurs, Mise en oeuvre de propriétés, Redéfinitions d'opérateurs) Mise en oeuvre de l'héritage (Surcharge VS redéfinition) Gestion des exceptions (try/except/raise, Hiérarchie de classes d'exceptions) Mise en oeuvre d'un itérateur UTILISATION DE MODULES ET DE PACKAGES PYTHON Concepts fondamentaux (Mise en oeuvre et utilisation de modules, de packages) La bibliothèque de modules standards (Modules datetime, math, re : Regular Expressions, Modules os, sys et shutil : services du système d'exploitation, La documentation des différents modules) GESTION DES ENTRÉES/SORTIES Le module io Module csv : traitement de fichiers structurés par séparateurs Utilisation de fichier JSON La sérialisation avec le module Pickle, avec le module Shelve MANIPULATION DE DONNÉES XML Concepts fondamentaux relatifs à XML (Le W3C, Les principales technologies XML) Parsing XML : les différentes techniques (Parser un document XML avec le modèle SAX, Parser un document XML avec le modèle DOM, La librairie lxml) MANIPULATION D'UNE BASE DE DONNÉES La spécification DB-API Accès à une base de données (Connexion à la base de données, Exécution de requêtes SQL, Manipulation des résultats, Utilisation de procédures stockées, Gestion de transactions) Moteur de persistance relationnel/objet (Concepts fondamentaux, Introduction à SqlAlchemy) PROGRAMMATION PARALLÈLE Concepts généraux (Processus vs Threads, Architectures multi-coeurs) Mise en oeuvre d'une application multi-threads Gestion de la synchronisation INTRODUCTION À LA MISE EN OEUVRE D'INTERFACE GRAPHIQUE Les différents APIs graphiques : Tkinter, PyQt5 Mise en ¿uvre d'une interface graphique simple BONNES PRATIQUES DE DÉVELOPPEMENT Documenter vos codes avec les Docstrings Mise en ¿uvre de tests unitaires : DoDocTest et UniTest Débugger du code python Utilisation de dépôts de codes sources INTÉGRATION PYTHON/C Codage et utilisation d'une fonction C Intégration de code C via Swig
Objectifs
Etre en mesure de réaliser des programmes Python mettant en jeu la syntaxe de base, la programmation orientée objet, la gestion du système d'exploitation, l'accès aux fichiers (textes, binaires, XML, ...) et au bases de données
Résultats
Certification