Pour éditer le wiki, il faut demander un compte à un Lapin !
Difference between revisions of "Découverte de la programmation"
(→Approfondissement avec Scheme) |
(→Approfondissement en Scheme/Racket) |
||
(18 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
L'atelier est fait pour des débutants souhaitant découvrir la programmation. Puisqu'il s'agit d'une initiation, aucune expérience en programmation n'est pré-requise, mais une bonne dose de curiosité est conseillée. | L'atelier est fait pour des débutants souhaitant découvrir la programmation. Puisqu'il s'agit d'une initiation, aucune expérience en programmation n'est pré-requise, mais une bonne dose de curiosité est conseillée. | ||
− | Il se déclinera en | + | Il se déclinera en ateliers autour de [http://racket-lang.org/ Racket] un langage possédant un environnement riche pour l'enseignement |
− | + | Notez bien que l'on va faire de l'algorithmique au travers d'exemples ludiques et amusants. Et il s'avère que Racket est redoutable pour cela. | |
== Description == | == Description == | ||
Line 19: | Line 19: | ||
** La programmation itérative et récursive | ** La programmation itérative et récursive | ||
* La structures de données : listes, piles, dictionnaires, etc... | * La structures de données : listes, piles, dictionnaires, etc... | ||
− | |||
− | |||
Si nous avons le temps, nous pourrons conclure l'atelier en travaillant sur un petit projet de code, tous en même temps. | Si nous avons le temps, nous pourrons conclure l'atelier en travaillant sur un petit projet de code, tous en même temps. | ||
Line 26: | Line 24: | ||
== Organisation == | == Organisation == | ||
− | Pad : https://lite5.framapad.org/p/Initiation_python_leloop | + | ; Pad : https://lite5.framapad.org/p/Initiation_python_leloop |
+ | ; Document Scheme/Racket: https://github.com/Ateliers-programmation/Initiation-Racket/blob/master/introduction.md | ||
+ | ; Documents Python: https://github.com/ateliers-programmation-leloop-2015/python/blob/master/cours.md | ||
+ | |||
+ | == Inscriptions == | ||
+ | Vous pouvez nous rejoindre sans avoir fait les sessions précédentes mais lisez et travailler alors le -> [https://github.com/Ateliers-programmation/Initiation-Racket/blob/master/introduction.md document] <-! | ||
+ | Par respect pour les autres et pour arriver à nous suivre! | ||
+ | |||
+ | === Framapad === | ||
+ | https://framadate.org/ssnwo1rlx7jchsomgmig9l4e/admin | ||
+ | |||
+ | === Session 03 === | ||
+ | ==== Approfondissement en [https://fr.wikipedia.org/wiki/Scheme Scheme/Racket] ==== | ||
+ | ; Sujets: Retour sur la récursion terminale et simple, [https://fr.wikipedia.org/wiki/Liste_%28informatique%29 Listes] sous forme d'exercices. | ||
+ | ; Date : Samedi 21 Février 2015, dès 14:00 jusque à 18:00 avec une pause | ||
+ | ; Durée envisagée : 3h00 | ||
+ | ; Animation : Darnuria | ||
+ | ; Présents: TBD | ||
+ | |||
+ | == Archives == | ||
+ | === Session 02 === | ||
+ | ==== Initiation à [https://fr.wikipedia.org/wiki/Scheme Scheme/Racket] ==== | ||
+ | ; Sujets: [https://fr.wikipedia.org/wiki/Programmation_fonctionnelle Programmation fonctionnelle basique], Expressions, Opérateurs, Fonctions, [https://fr.wikipedia.org/wiki/Fermeture_%28informatique%29 fermetures ou clôtures lexicales] et [https://fr.wikipedia.org/wiki/R%C3%A9cursivit%C3%A9 récursion] | ||
+ | ; Date : Samedi 14 Février 2015, dès 14:00 jusque à 18:00 | ||
+ | ; Durée envisagée : 3h30 | ||
+ | ; Animation : Darnuria et Léo | ||
+ | ; Présents: 7 | ||
+ | |||
+ | === Session 01 === | ||
+ | ==== Exercices avec [https://fr.wikipedia.org/wiki/Python_%28langage%29 Python] ==== | ||
+ | ; Implémenter une calculatrice en [https://fr.wikipedia.org/wiki/Notation_polonaise_inverse notation postfixée] | ||
+ | ; Date : Mardi 03 Janvier 2014, dès 18:30 | ||
+ | ; Durée envisagée : 3h30 | ||
+ | ; Animation : Darnuria et Leo` | ||
+ | ; Présents: 6 | ||
=== Session 00 === | === Session 00 === | ||
− | |||
− | |||
==== Découverte avec [https://fr.wikipedia.org/wiki/Python_%28langage%29 Python] ==== | ==== Découverte avec [https://fr.wikipedia.org/wiki/Python_%28langage%29 Python] ==== | ||
+ | ; Sujet: Expressions, Assignations, Fonctions, Récursion, Exercices sur les fractales. | ||
; Date : Mardi 27 Janvier 2014, dès 18:30 | ; Date : Mardi 27 Janvier 2014, dès 18:30 | ||
; Durée envisagée : 3h30 | ; Durée envisagée : 3h30 | ||
; Animation : Darnuria et Leo` | ; Animation : Darnuria et Leo` | ||
− | + | ; Présents: 8 | |
− | + | ||
− | + | ||
− | + | ||
− | ; | + | |
== Références == | == Références == | ||
Line 48: | Line 75: | ||
Nous avons piocher des informations entre-autre dans les ouvrages suivants: | Nous avons piocher des informations entre-autre dans les ouvrages suivants: | ||
+ | === Livres === | ||
* [https://mitpress.mit.edu/sicp/ Structure and Interpretation of computer programs] par Hal Abelson, Gerald Jay Sussman et Julie Sussman. | * [https://mitpress.mit.edu/sicp/ Structure and Interpretation of computer programs] par Hal Abelson, Gerald Jay Sussman et Julie Sussman. | ||
* [http://programmer-avec-ocaml.lri.fr/ Apprendre à programmer avec OCaml] par Jean-Christophe Filliâtre et Sylvain Conchon. | * [http://programmer-avec-ocaml.lri.fr/ Apprendre à programmer avec OCaml] par Jean-Christophe Filliâtre et Sylvain Conchon. | ||
− | * [http://deptinfo.unice.fr/~roy/PCPS/index.html Premiers cours de | + | * [http://deptinfo.unice.fr/~roy/PCPS/index.html Premiers cours de programmation en Scheme] par Jean-Paul Roy de l'université de Nice. |
+ | |||
+ | === Vidéo === | ||
+ | * [https://www.youtube.com/watch?v=42GxCJB7IVw&list=PLBk_pGscJ8eOEksRRhoEroZjw88UOkLKE Vidéos du Mooc "Programmation Récursive"] par Christian Queinnec. | ||
[[Category:Workshops]] | [[Category:Workshops]] | ||
[[Category:Ateliers d'initiation]] | [[Category:Ateliers d'initiation]] |
Latest revision as of 02:24, 15 February 2015
Contents
Introduction
L'objectif de cet atelier est de découvrir les bases de la programmation, c'est à dire le fait "d'apprendre" à faire des choses nouvelles à votre ordinateur.
L'atelier est fait pour des débutants souhaitant découvrir la programmation. Puisqu'il s'agit d'une initiation, aucune expérience en programmation n'est pré-requise, mais une bonne dose de curiosité est conseillée.
Il se déclinera en ateliers autour de Racket un langage possédant un environnement riche pour l'enseignement
Notez bien que l'on va faire de l'algorithmique au travers d'exemples ludiques et amusants. Et il s'avère que Racket est redoutable pour cela.
Description
Nous couvrirons différents aspects de la programmation, allant du simple affichage de « Bonjour » jusqu'à des programmes plus complexes.
Pour cela, après une rapide introduction sur les paradigmes et les langages de programmation, nous suivront le plan suivant:
- L'écriture d'algorithmes :
- Les bases de la syntaxe du langage
- Le contrôle d'exécution
- Les procédures et fonctions
- La programmation itérative et récursive
- La structures de données : listes, piles, dictionnaires, etc...
Si nous avons le temps, nous pourrons conclure l'atelier en travaillant sur un petit projet de code, tous en même temps.
Organisation
- Pad
- https://lite5.framapad.org/p/Initiation_python_leloop
- Document Scheme/Racket
- https://github.com/Ateliers-programmation/Initiation-Racket/blob/master/introduction.md
- Documents Python
- https://github.com/ateliers-programmation-leloop-2015/python/blob/master/cours.md
Inscriptions
Vous pouvez nous rejoindre sans avoir fait les sessions précédentes mais lisez et travailler alors le -> document <-! Par respect pour les autres et pour arriver à nous suivre!
Framapad
https://framadate.org/ssnwo1rlx7jchsomgmig9l4e/admin
Session 03
Approfondissement en Scheme/Racket
- Sujets
- Retour sur la récursion terminale et simple, Listes sous forme d'exercices.
- Date
- Samedi 21 Février 2015, dès 14:00 jusque à 18:00 avec une pause
- Durée envisagée
- 3h00
- Animation
- Darnuria
- Présents
- TBD
Archives
Session 02
Initiation à Scheme/Racket
- Sujets
- Programmation fonctionnelle basique, Expressions, Opérateurs, Fonctions, fermetures ou clôtures lexicales et récursion
- Date
- Samedi 14 Février 2015, dès 14:00 jusque à 18:00
- Durée envisagée
- 3h30
- Animation
- Darnuria et Léo
- Présents
- 7
Session 01
Exercices avec Python
- Implémenter une calculatrice en notation postfixée
- Date
- Mardi 03 Janvier 2014, dès 18:30
- Durée envisagée
- 3h30
- Animation
- Darnuria et Leo`
- Présents
- 6
Session 00
Découverte avec Python
- Sujet
- Expressions, Assignations, Fonctions, Récursion, Exercices sur les fractales.
- Date
- Mardi 27 Janvier 2014, dès 18:30
- Durée envisagée
- 3h30
- Animation
- Darnuria et Leo`
- Présents
- 8
Références
- Scheme fut utilisé pendant longtemps au MIT comme support de cours pour le premier cours de programmation. https://en.wikipedia.org/wiki/Structure_and_Interpretation_of_Computer_Programs
Sources bibliographiques
Nous avons piocher des informations entre-autre dans les ouvrages suivants:
Livres
- Structure and Interpretation of computer programs par Hal Abelson, Gerald Jay Sussman et Julie Sussman.
- Apprendre à programmer avec OCaml par Jean-Christophe Filliâtre et Sylvain Conchon.
- Premiers cours de programmation en Scheme par Jean-Paul Roy de l'université de Nice.
Vidéo
- Vidéos du Mooc "Programmation Récursive" par Christian Queinnec.