Pour éditer le wiki, il faut demander un compte à un Lapin !

Difference between revisions of "Découverte de la programmation"

From Le L∞p's Wiki
Jump to: navigation, search
(Inscriptions)
(Approfondissement en Scheme/Racket)
 
(53 intermediate revisions by 14 users not shown)
Line 1: Line 1:
L'objectif de cet atelier est de découvrir les bases de la programmation impérative, qui consiste simplement à donner des ordres à votre ordinateur (des instructions) dans un langage approprié.
+
== 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.
  
Puisqu'il s'agit d'une découverte, aucun pré-requis n'est nécessaire, sauf de la curiosité. Bref, c'est un atelier fait pour les n00bs. :)
+
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 [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 ==
  
À l'aide du langage Python, nous couvrirons alors différents aspects de la programmation, allant du simple affichage de 'Bonjour' jusqu'à des programmes plus complexes.
+
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 découperons l'atelier en 3 parties :
+
Pour cela, après une rapide introduction sur les paradigmes et les langages de programmation, nous suivront le plan suivant:
* l'écriture d'algorithmes :
+
* L'écriture d'algorithmes :
** les bases de la syntaxe du langage,
+
** Les bases de la syntaxe du langage
** le contrôle d'exécution,
+
** Le contrôle d'exécution
** les procédures et fonctions,
+
** Les procédures et fonctions
** la programmation itérative et récursive ;
+
** La programmation itérative et récursive
* la structuration des données : listes, piles, dictionnaires, etc.
+
* La structures de données : listes, piles, dictionnaires, etc...
  
Si le temps le permet, 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.
  
 
== Organisation ==
 
== Organisation ==
; Date : à définir dès qu'il y a assez d'inscrits.
+
 
; Durée envisagée : 4h
+
; Pad : https://lite5.framapad.org/p/Initiation_python_leloop
; Animation : PoluX
+
; 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 ==
 
== Inscriptions ==
Intéressé(e) ? Note ton nom ici : Intruse, quota_atypique, Élodie, Bouteille, PetiPandaRou, Munto, [[User:Yoann512|Yoann512]], [[User:Naar|naar]], bookynette
+
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 ===
 +
==== 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
 +
; 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 ===
 +
* [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://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:Propositions]]
 
 
[[Category:Workshops]]
 
[[Category:Workshops]]
 +
[[Category:Ateliers d'initiation]]

Latest revision as of 02:24, 15 February 2015

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

Sources bibliographiques

Nous avons piocher des informations entre-autre dans les ouvrages suivants:

Livres

Vidéo