43 lines
1.9 KiB
ReStructuredText
43 lines
1.9 KiB
ReStructuredText
|
Découverte de Pygame pour l'ISN en 2017-2018
|
||
|
############################################
|
||
|
|
||
|
:date: 2018-04-03
|
||
|
:modified: 2018-04-03
|
||
|
:authors: Bertrand Benjamin
|
||
|
:category: ISN
|
||
|
:tags: Programmation
|
||
|
:summary: Découverte de la librairie Pygame avec la classe d'ISN en 2017-2018
|
||
|
|
||
|
|
||
|
Étape 1: découverte de Pygame
|
||
|
=============================
|
||
|
|
||
|
Les élèves travaillent sur `le programme draw.py <./draw.py>`_.
|
||
|
|
||
|
Ils doivent l'exécuter, commenter chaque ligne en expliquant ce qu'il s'y passe et se construire un mémo des fonctions de Pygame.
|
||
|
|
||
|
Ils sont très fortement invité à modifier le programme pour se l'approprier.
|
||
|
|
||
|
On coupera régulièrement la séance pour faire des petits bilans sur les questions intéressantes que se posent les élèves. Voici quelques sujets qui seront sans aucuns doutes traités (quitte à les pousser!):
|
||
|
- La couleur et le code RGB
|
||
|
- Le repère et les coordonnées dans Pygame
|
||
|
- Les coordonnées dans les fonctions pour tracer les éléments
|
||
|
- la gestion des évènements
|
||
|
|
||
|
Il est intéressant de faire cette étape sur 2 séances. Cela renforcera l'intérêt de faire de bons commentaires, de bien prendre des notes et de sauvegarder son travail (...!).
|
||
|
|
||
|
Étape 2: Projet Snake
|
||
|
=====================
|
||
|
|
||
|
Le but est de refaire le `jeu snake <./snake.pdf>`_.
|
||
|
|
||
|
Ce projet est décomposer en étapes. Les premières sont à faire dans l'ordre mais on peut laisser à partir de l'étape 4 la liberté aux élèves d'ajouter des étapes ou de faire les étapes dans l'ordre qui leur convient le mieux.
|
||
|
|
||
|
Pour les accompagner, on peut leur donner `ce modèle <./pygame_base.py>`_ pour commencer un projet Pygame.
|
||
|
|
||
|
Quelques mois après cette séquence, des élèves m'ont demandé une version de ce projet codé. La voici:
|
||
|
|
||
|
- `snake version avancé <./snake_corr.py>`_ (Il y a potentiellement encore des milliers de choses à ajouter!)
|
||
|
- `Explication sur la géométrie de la fenêtre <./snake_expl.pdf>`_
|
||
|
|