Catégories

MOOC – Python – Des fondamentaux à l’utilisation du langage

MOOC – Python – Des fondamentaux à l’utilisation du langage

ISO + Ressources complémentaires PDF | Français | 6 H 40 Min | 7.5 Go

Dans ce cours, vous apprendrez à bien programmer en Python. On vous mènera des premiers pas dans le langage à l’étude des concepts les plus évolués au travers de nombreuses vidéos courtes, d’exercices et de mini-projets. Python possède de nombreuses librairies qui font déjà probablement ce que vous souhaitez. Vous pouvez créer un site Web avec Django, travailler avec des bases de données avec SQLAlchemy, développer des applications sur Internet avec Twisted, faire des applications réseaux avec Scapy, faire du calcul scientifique ou symbolique avec NumPy, SciPy ou Sage, et bien plus encore. Cependant pour exploiter pleinement ces librairies vous devez acquérir une profonde compréhension du langage.

Le langage Python encourage une programmation intuitive qui repose sur une syntaxe naturelle et des concepts fondamentaux puissants qui facilitent la programmation. Il est important de bien maîtriser ces concepts pour écrire rapidement des programmes efficaces, faciles à comprendre et à maintenir, et qui exploitent pleinement les possibilités du langage.

On couvrira dans ce cours tous les aspects du langage, des types de base aux méta-classes, mais on l’articulera autour des trois concepts fondamentaux qui font la force de Python :
• Le concept de typage dynamique et de références partagées qui permet une programmation rapide, facilement extensible et économe en mémoire.
• Le concept d’itérateur qui permet une programmation naturelle et intuitive où parcourir un fichier est aussi facile que de faire une boucle dessus et ne prend qu’une ligne de code.
• Le concept d’espace de nommage qui permet une programmation plus sûre, minimisant les interactions non souhaitées entre différentes parties d’un programme.

À la fin de ce Mooc, vous maîtriserez les fondamentaux du langage et vous saurez les utiliser pour exploiter toute la puissance du langage Python.

A QUI S’ADRESSE CE COURS ?
Ce Mooc s’adresse aussi bien à des programmeurs confirmés qui veulent découvrir et approfondir Python qu’à des débutants en programmation de niveau licence scientifique, c’est-à-dire avec des bases en informatique, une familiarité avec certaines notions mathématiques comme les variables et les fonctions, des notions d’algorithmique et une bonne capacité d’abstraction. Cependant, nous sommes convaincus qu’une forte motivation et beaucoup de travail peuvent remplacer ces pré-requis.

Pré-requis :
• Bases en informatique : installer une application, savoir ce qu’est un système de fichiers, savoir configurer un chemin par une variable PATH, etc.
• Une familiarité avec certaines notions mathématiques comme les variables et les fonctions
• Des notions d’algorithmique : boucle, condition, logique de base (et, ou, etc.)
• Une bonne capacité d’abstraction

ORGANISATION :
Ce MOOC donnera lieu a une attestation de suivi. Les ressources de ce cours sont organisées en trois niveaux : basique, intermédiaire et avancé. Cette organisation vous est proposée afin de vous aider à faire votre choix en fonction de vos objectifs. Par exemple, le niveau basique est le minimum requis pour acquérir les bases de Python tandis que le niveau avancé vous permettra d’approfondir des sujets plus pointus.

Plan du cours :
Semaine 01 – Introduction et prise en main
Semaine 02 – Types de base
Semaine 03 – Références partagées et itérateurs
Semaine 04 – Fonctions
Semaine 05 – Modules, classes et espaces de nommage
Semaine 06 – Conception d’itérateurs et gestion d’exceptions
Semaine 07 – Sujets avancés

Semaine 01 – Introduction et prise en Main
01 – Présentation de la semaine
02 – Séquences
03 – Organisation du MOOC
04 – Les outils de la distribution standard Python
05 – Les notebooks
06 – Pourquoi Python ?

Semaine 02 – Types de base
01 – Séquences
02 – Introduction au typage dynamique
03 – Les types numériques
04 – Les séquences
05 – les listes
06 – Les tuples
07 – Introduction aux tests if/else
08 – Introduction aux boucles for et aux fonctions
09 – Les chaînes de caractères

Semaine 03 – Références partagées et itérateurs
01 – Séquences
02 – Tables de hash
03 – Les dictionnaires
04 – Les ensembles
05 – Les références partagées
06 – Introduction aux modules
07 – L’indentation comme syntaxe de base
08 – Les tests if/elif/else et les opérateurs booléens
09 – Les boucles for et les itérateurs

Semaine 04 – Fonctions
01 – Séquences
02 – Les fichiers
03 – Boucle While
04 – Fonction lambda, programmation fonctionnelle
05 – Compréhension de listes, sets et dictionnaires
06 – Les Fonctions
07 – Portée des variables dans les fonctions : règle LEG
08 – Portée des variables dans les fonctions et références partagées
09 – Passage d’arguments et appel de fonctions

Semaine 05 – Modules, classes et espaces de nommage
01 – Séquences
02 – Modules et espaces de nommage
03 – Processus d’importation des modules
04 – Importation de modules et espaces de nommage
05 – Classes, instances et méthodes
06 – Héritage
07 – Surcharge d’opérateurs
08 – Quand utiliser fonctions, modules et classes ?
09 – Assignation et référencement des variables et des attributs

Semaine 06 – Conception d’itérateurs et gestion d’exceptions
01 – Séquences
02 – Mini-projets
03 – Fonctions génératrices
04 – Conception d’itérateurs
05 – Exceptions
06 – Conception d’exceptions personnalisées
07 – Context Manager
08 – Expressions régulières

Semaine 07 – Sujets avancés
01 – Séquences
02 – Méthodes statiques et de classe
03 – Les décorateurs
04 – Les classes new-style
05 – Les métaclasses
06 – Performance en Python
07 – Python 3

_blank
_blank
Articles récents