Feuille de route 2019 (1A)#

Page principale du cours

Evaluation#

  • module informatique - 8 novembre (vendredi) - 1/3 de la note finale, (6/20 pour réaliser le module, 6/20 pour implémenter une stratégie qui fonctionne, 6/20 pour écrire un test unitaire, 2/20 pour fournir un exemple d’utilisation du module qui fonctionne, 1 point pour être dans les 5 premiers)

  • Séances notées - 22 octobre - 2/3 de la note finale

Au second semestre, pas de TD, juste un projet informatique, par groupe à soutenir en juin.

Prérequis#

La programmation fait maintenant partie du programme des classes préparatoires. Ce cours suppose que les types du langage, sa syntaxe sont connus tout comme quelques algorithmes de tri comme le tri bulle et le tri fusion.

Version de Python#

Les exercices et notebooks sont testées sur la version Python 3.7. Le plus simple pour installer Python est d’utiliser la distribution Anaconda. La distribution standard fonctionne également en s’aidant de cette page Archived: Unofficial Windows Binaries for Python Extension Packages pour Windows et de celle-ci pour la distribution Debian 9 (Ubuntu est très similaire) : Install Python 3.7 and many packages on Linux Debian 9.

Plan proposé#

Liens, notebooks prévus pour les séances pratiques.

Séance 1 - 3/9 - introduction#

Python, choix du langage, évaluation, modules, mise en production, algorithmes, quelques mots sur les années prochaines…

Séance 2 - 10/9 - parcours de solutions#

Suggestions :

Autres suggestions :

Séance 3 - 17/9 - expressions régulières et classes#

Le templating est un sujet intéressant mais facile à comprendre dès les premières de documentation. Il faut voir les modules jinja2 ou mako. Le principe est assez simple et plutôt bien documenté. Indispensable pour concevoir des sites web. TemPy est aussi à regarder car le design est différent.

Autres suggestions :

Séance 4 - 24/9 - graphes - distance d’édition#

Lectures :

Notebooks : TD - Algorithmes

  • un notebook sur les graphes

  • un notebook sur les distances

Jeter un oeil sur la liste Catalogue d’algorithmes.

Séance 5 - 1/10 - génie logiciel#

Sur github : td1a_unit_test_ci.

Séance 6 - 8/10 - dataframe - matplotlib#

Premiers notebooks sur les dataframes et les matrices avec les modules numpy et pandas.

Derniers notebooks sur les dataframes et les matrices avec les modules matplotlib, bokeh.

Séance 7 - 15/10 - cartes et 2048#

Notebook suggérés sur les cartes :

Notebooks : TD - Algorithmes

  • plus court chemin dans un graph

Les élèves doivent tester leur module en TD. Rendre le module python implémentant une stratégie pour le jeu 2048, Réalisation d’un module python par groupe de 3 à 5.

Séance 8 - 22/10 - révision - TD noté#

TD noté.