ajout des annexses

This commit is contained in:
gwen 2017-03-20 10:21:52 +01:00
parent fb6c63feb4
commit aea8e036a3
5 changed files with 56 additions and 63 deletions

View File

@ -3,31 +3,33 @@ Initiation à l'algorithmique et présentation de la programmation
**Présentation du cours** **Présentation du cours**
- L'accent est mis sur l'approche **algorithmique scientifique**, dite algorithmique - L'accent est mis sur l'approche **algorithmique scientifique**, dite algorithmique
algébrique puisque qu'il s'agit d'un domaine de l'algèbre (comme sous-ensemble de algébrique. L'algorithmique est un sous-domaine de l'algèbre et des
l'arithmétique modulaire) ; approches modulaires (arithmétique modulaire...)
- Cette approche étant assez exigeante, aucun formalisme fort de l'algorithmique
mathématique ne sera présenté. Aucun symbole mathématique donc, et seulement du pseudo-code.
L'approche mathématique forte utilisant le formalisme de l'algorithmique algébrique est en
général enseignée en France uniquement aux cours des grandes écoles.
- L'algorithmique présentée ici est donc délibérément pseudo-scientifique mais en revanche
ouverte au multi-paradigme. En général l'évocation d'un algorithme en pseudo code est toujours
réducteur car limité au style de programmation le plus à la mode actuellement, c'est-à-dire le
style impératif. Nous présenterons un éventail des plus grands paradigmes de programmation
existants. Nous nous limiterons à la programmation impérative, fonctionnelle, modulaire,
générique et objet. Nous envisagerons les structures de données et les structures de contrôle
spécifique à chacun des styles évoqués.
- Parce qu'un honnête programmeur doit avoir une vue d'ensemble de l'état de l'art, - Le point de vue mathématique étant assez exigeant, aucun formalisme fort de
nous évoquerons un panorama des différents langages existant, historiques et actuels, en les l'algorithmique mathématique ne sera présenté. Aucun symbole mathématique donc, et
comparants les uns aux autres. seulement du pseudo-code.
L'approche mathématique forte utilisant le formalisme mathématique de
- Durant tout le cours, nous souhaitons proposer une pédagogie par l'exemple, et nous nous l'algorithmique algébrique est en général enseignée en France uniquement aux cours
limiterons l'exposé à deux langages : principalement le Python3 pour la programmation des grandes écoles.
impérative, modulaire et objet, mais nous évoquerons aussi certains exemples en langage OCaml
- L'algorithmique présentée ici est donc délibérément pseudo-scientifique mais en revanche
ouverte au multi-paradigme. En général l'évocation d'un algorithme en pseudo code est toujours
réducteur car limité au style de programmation le plus à la mode actuellement, c'est-à-dire le
style impératif. Nous présenterons un éventail des plus grands paradigmes de programmation
existants. Nous nous limiterons à la programmation impérative, fonctionnelle, modulaire,
générique et objet. Nous envisagerons les structures de données et les structures de contrôle
spécifiques à chacun des styles évoqués.
- Et parce qu'un honnête programmeur doit avoir une vue d'ensemble de l'état de son art,
nous évoquerons un panorama des différents langages existants -- historiques et contemporains --
en les comparants les uns aux autres.
- Durant tout le cours, nous souhaitons proposer une pédagogie par l'exemple, et nous nous
limiterons l'exposé à deux langages : principalement le Python3 pour la programmation
impérative, modulaire et objet, mais nous évoquerons aussi certains exemples en langage OCaml
à propos de la programmation fonctionnelle et générique. à propos de la programmation fonctionnelle et générique.

View File

@ -1,8 +1,8 @@
bilan agile Les méthodes agile
============ ===================
mode itératif Le mode itératif
------------- -----------------
- livrer des versions successives et utilisables qui convergent vers - livrer des versions successives et utilisables qui convergent vers
la version finale la version finale
@ -14,15 +14,15 @@ mode itératif
- les specs détaillées sont écrites "juste à temps" - les specs détaillées sont écrites "juste à temps"
planification agile La planification agile
------------------- -----------------------
- chaque livraison est un projet qui est planifié en tant que tel - chaque livraison est un projet qui est planifié en tant que tel
- utiliser l'expérience acquise pour affiner les estimations - utiliser l'expérience acquise pour affiner les estimations
- préservation de l'écologie du projet au quotidien (code, tests...) - préservation de l'écologie du projet au quotidien (code, tests...)
confiance, feedback La confiance, feedback
--------------------- -----------------------
- livraisons régulières - livraisons régulières
- progrès visibles par tous (pas d'effet tunnel) - progrès visibles par tous (pas d'effet tunnel)
@ -30,8 +30,8 @@ confiance, feedback
- investissement du Product Owner - investissement du Product Owner
- chercher la collaboration plutôt que la confrontation - chercher la collaboration plutôt que la confrontation
agilité L'agilité
--------- ----------
- le projet n'est pas joué d'avance - le projet n'est pas joué d'avance
- cultiver la souplesse - cultiver la souplesse
@ -39,8 +39,8 @@ agilité
- sortir de la confrontation, jouer le "nous collectif" - sortir de la confrontation, jouer le "nous collectif"
mettre tout le monde sur le mme pont et amener tout le monde à bon port mettre tout le monde sur le mme pont et amener tout le monde à bon port
outils agiles Les outils agiles
-------------- ------------------
- planification par itérations de 4 semaines - planification par itérations de 4 semaines
- entrepot de source partagé - entrepot de source partagé
@ -56,7 +56,7 @@ outils agiles
- suivi de l'avancement - suivi de l'avancement
- documentation - documentation
le product owner Le product owner
----------------- -----------------
idéalement, idéalement,
@ -65,16 +65,16 @@ idéalement,
- fibre projet - fibre projet
- dispo à 100% - dispo à 100%
tests Les tests
----- ---------
- automatiser - automatiser
- viser l'exhaustivité - viser l'exhaustivité
- tester une cible mouvante - tester une cible mouvante
- migrer les tests d'une release à l'autre - migrer les tests d'une release à l'autre
questions importantes Questions importantes en environnement agile
----------------------- ----------------------------------------------
- quelle durée d'itération ? - quelle durée d'itération ?
- comment découper en itérations ? - comment découper en itérations ?

View File

@ -1,13 +1,15 @@
scrum scrum
===== =====
scrum .. glossary::
Scrum est une méthode agile pour la gestion de projets scrum
Le terme Scrum est emprunté au rugby et signifie mêlée.
Ce processus s'articule en effet autour d'une équipe soudée, Scrum est une méthode agile pour la gestion de projets
qui cherche à atteindre un but, comme c'est le cas en rugby Le terme Scrum est emprunté au rugby et signifie mêlée.
pour avancer avec le ballon pendant une mêlée. Ce processus s'articule en effet autour d'une équipe soudée,
qui cherche à atteindre un but, comme c'est le cas en rugby
pour avancer avec le ballon pendant une mêlée.
Scrum définit trois rôles principaux : Scrum définit trois rôles principaux :

View File

@ -71,7 +71,7 @@ language = 'fr'
# non-false value, then it is used: # non-false value, then it is used:
#today = '' #today = ''
# Else, today_fmt is used as the format for a strftime call. # Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y' today_fmt = '%d/%m/%Y'
# List of patterns, relative to source directory, that match files and # List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files. # directories to ignore when looking for source files.
@ -233,7 +233,7 @@ latex_logo = '_static/cesi.jpg'
# For "manual" documents, if this is true, then toplevel headings are parts, # For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters. # not chapters.
latex_use_parts = True latex_use_parts = False
# If true, show page references after internal links. # If true, show page references after internal links.
#latex_show_pagerefs = False #latex_show_pagerefs = False

View File

@ -1,8 +1,6 @@
Introduction à l'algorithmique Introduction à l'algorithmique
================================ ================================
Contents:
.. toctree:: .. toctree::
:maxdepth: 2 :maxdepth: 2
@ -10,17 +8,8 @@ Contents:
langage langage
modularite modularite
machine machine
annexes/index
.. FIXME machine, algorithmique .. FIXME machine, algorithmique
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`