Ma façon de présenter Python à des élèves du premier cycle du secondaire

De nos jours, la plupart des enfants se familiarisent avec le monde de la programmation en créant des projets sur la plateforme scratch.mit.edu La création de projets se produit en connectant des blocs multicolores sans entrer de code à partir du clavier (nous n'entrons que les valeurs des variables).

Cependant, les enfants grandissent, ils deviennent encombrés dans le monde de Scratch, et en ce moment ils peuvent offrir plusieurs voies de développement.

Certains, comme mon fils Artyom, ayant beaucoup de travail dans l'éditeur graphique Scratch, choisissent un cercle de beaux-arts.

Les autres fans de jeux 2D continuent de créer des jeux plus professionnels sur la plateforme Construct.

Eh bien, les fans de programmation peuvent être conseillés par Python, car c'est l'un des langages les plus simples à apprendre. Mais qu'en est-il, après tout, les élèves du primaire ne connaissent pas complètement le clavier?

Voici un exemple d'un projet Scratch simple dans lequel un enfant ne saisit que 2 chiffres à partir du clavier.



Dans les langages de programmation "pour adultes", vous devez taper beaucoup plus de texte à partir du clavier, mais il existe un moyen de faciliter la vie des enfants lors du passage de Scratch à Python.

Pourquoi utiliser Python?
Pascal Basic, hh.ru Python.

, IT,
5 807 «Python»
262 «Pascal»
44 «VB.NET»

Pascal hh.ru Delphi, PascalABC, .
( PascalABC pascalabc.net/rubantsevbooks )

Il y a quelques années, j'ai décidé de présenter Python à mes élèves et j'ai commencé à chercher de la littérature sur ce sujet. Il y avait très peu de livres sur Python pour les enfants, et aucun d'eux ne m'a complètement satisfait - j'ai dû tout inventer moi-même à nouveau, comme les histoires sur Scratch habr.com/en/post/234823 .

Quel est le problème avec ces livres? Le problème commun est qu'il y a beaucoup de code. Et si ce n'est pas essentiel pour les élèves du secondaire, en 20 minutes, ils seront en mesure de mettre sur pied un programme de 30 à 40 lignes, alors pour les élèves du primaire, c'est un énorme problème.

De plus, les projets eux-mêmes, qui sont offerts dans les livres, à mon avis, ne conviennent pas très bien aux classes élémentaires.

Une petite revue de la littérature avec ma note personnelle.

Une petite revue de la littérature avec ma note personnelle
3
Python for Kids archive.org/details/PythonForKids/mode/2up
vectorplus .
“ , , . , . — . — — . .” habr.com/ru/post/485424
: , , 20 , 60 ( 6 ), .

2
Python : -
www.litres.ru/hans-georg-shuman/python-dlya-detey-48411263
, 40 . .

1
, , : . Scratch Python www.labirint.ru/books/481230
Scratch ( 3 ) Python (4 ). , , . 10-12 , .

N'ayant pas trouvé de manuel adapté sur Internet, j'ai trouvé ma propre façon de présenter Python aux enfants, et la plate- forme trinket.io m'a aidé dans cette tâche .

Sur cette plateforme, il est possible de travailler en ligne avec les langages de programmation suivants:

  • Blockly language Blockly
  • HTML
  • GlowScript
  • R
  • Java
  • et bien sûr Python

et dans la version payante (3 $ par mois), vous pouvez utiliser Pygame pour créer des jeux!



Et la découverte principale pour moi a été que le bijou de bloc se transforme en code Python en trois clics! Cliquez d'abord pour afficher le code.



Quelques clics supplémentaires convertissent un bijou de bloc en bijou Python.



Terminé!

L'élève reçoit un programme en Python qu'il a créé sans une longue recherche pénible de caractères sur le clavier. Maintenant, l'enseignant peut faire des analogies avec le langage de bloc, parler de la syntaxe et donner la tâche de changer les coordonnées afin que le carré se transforme en rectangle.



De plus, l'enfant peut désormais "copier-coller" pour assembler un projet plus complexe, comme celui-ci avec le dessin d'une image.



C'est ainsi qu'est né mon cours Python.pour les élèves du primaire dans lesquels ils se familiarisent avec ce langage de programmation. Nous ne créons pas de projets complexes, nous travaillons dans la leçon de 45 minutes. Nous jetons un regard neuf sur les cycles et les conditions qui sont familiers avec la programmation Scratch, traitons des variables numériques et textuelles auxquelles nous n'avions jamais pensé auparavant. Nous nous familiarisons avec les types de données complexes, apprenons à travailler avec des tranches et diverses méthodes. Pour le rendre intéressant pour les enfants, en plus des motifs avec une tortue, nous créons des images à partir de caractères ACSII, dessinons des émoticônes Kaomoji et créons des images à partir de caractères Unicode.

Kitty avec une liste.



Caterpillar avec deux listes.



Image de caractère Unicode avec dictionnaire.



Travaillez avec des objets.



Et bien sûr, mon jeu Confusion préféré est simple, mais très amusant!



La plate-forme trinket.io est un excellent assistant pour présenter les élèves de Python aux élèves du primaire. Mais il n'y a pas si longtemps, j'ai découvert une autre magnifique plateforme qui vous permet de programmer en Python dans le monde de Minecraft. Il s'agit de la plateforme progkids.com créée par des développeurs nationaux. La plateforme est payante, mais récemment les auteurs de la plateforme ont posté sur Facebook un code promotionnel FREESELFCOURSE qui donne deux semaines d'accès gratuit.

Sous cette plate-forme, j'ai également développé un tas de leçons codim.online/pythonvm qui vous permettent de maîtriser des sujets plus complexes, tels que les boucles imbriquées et les tableaux multidimensionnels.

from mc import world, blocks, player

for i in range(5):
	for j in range(5):
			for k in range(5):
				world.buildHome(5 + (j * 5), 0 + (k * 5), 0 + (i * 10), 5, 5, 5, blocks.WOOD)



Dessinez des émoticônes à l'aide de tableaux.

from mc import *

heart = [ [[	0,   0, 152,   0,   0],
			[   0, 152, 152, 152,   0],
			[ 152, 152, 152, 152, 152],
			[ 152, 152, 152, 152, 152],
			[   0, 152,   0, 152,   0]] ]

scull = [[  [   0, 173, 173, 173,   0], 
			[   0, 173, 173, 173,   0],
			[ 173, 173, 173, 173, 173],
			[ 173,   0, 173,   0, 173],
			[   0, 173, 173, 173,   0]] ]
					
world.setBlocks(0, 3, 0, sad)
world.setBlocks(0, 3, 7, heart)
world.setBlocks(0, 3, 14, scull)
world.setBlocks(0, 3, -7, butterfly)



La plate-forme a un tas de fonctions intégrées qui facilitent la construction, vous permet de faire apparaître des créatures, de contrôler des drones, de construire des villes, de ~~ voler des vaches ~~, de creuser le métro, de construire des tunnels et des bunkers, de tout recouvrir de dynamite et ... et de faire beaucoup plus!



Vous pouvez également créer des bâtiments animés, tels que des montres.



Montrez ces plateformes aux enfants, je suis sûr qu'ils pourront faire de nombreux projets intéressants pour le plaisir des enseignants et des parents.

Et en l'honneur du jour de l'équinoxe vernal et du début de l'été astronomique, les 8 premières leçons du cours de connaissance Python sur le code promotionnel PYTHON2020 sont un cadeau pour tous les lecteurs.

All Articles