Scratch (langage)

Scratch | ||
![]() | ||
Date de première version | 2006 | |
---|---|---|
Paradigmes | Objet | |
Auteur | Mitchel Resnick | |
Développeurs | MIT Media Lab Lifelong Kindergarten Group [archive] | |
Dernière version | 2.0 ()1 | |
Typage | dynamique | |
Influencé par | Logo, Smalltalk, HyperCard, StarLogo (en), AgentSheets (en), Etoys (en) | |
A influencé | ScratchJr (en), Snap! | |
Écrit en | Squeak | |
Système d'exploitation | Mac OS, Windows, Linux | |
Licence | GPLv2 pour une version et Scratch Source Code License2 | |
Site web | scratch.mit.edu [archive] | |
Extension de fichier | sb, sb2, sprite et sprite2 | |
modifier ![]() |
Scratch est une implémentation visuelle et dynamique du langage de programmation Smalltalk fondée sur Squeak.
Cette plateforme d'apprentissage de codage comporte de plus de 14,5 millions de projets partagés allant de l'animation à la simulation 3D. Le nombre d'utilisateurs enregistrés est de 12 millions et ne cesse d'augmenter3.
Vue d’ensemble[modifier | modifier le code]
- Scratch est dynamique : il permet de modifier le code du programme en cours d'exécution.
- Scratch est orienté multimédia avec pour objectif l'enseignement de l'univers informatique aux enfants, il est basé sur la manipulation des objets dans la pure tradition des E-Toys (en) connus sous Squeak, tout comme les sons et les vidéos.
- Scratch est visuel, tout le code est directement inscrit dans la langue maternelle de l'enfant (une vingtaine de langues sont disponibles, y compris l’espéranto) sous forme de briques en couleurs (par exemple les contrôles en orange, les variables en rouge, les mouvements en bleu). Il permet de mettre en œuvre visuellement des concepts de base de la programmation tels que les boucles, les tests, les affectations de variables.
- Scratch permet ainsi à l'enseignant de diffuser sa pédagogie au moyen de l'interactivité quasi-ludique des objets manipulés par ces briques logicielles. Le nom de Scratch provient du Turntablism, cet art de mélanger des sons grâce aux tables de mixage, comme cette vision de réutiliser des objets.
- Scratch permet de rendre utilisable en ligne les projets réalisés, au moyen du plugin Adobe Flash Player lequel transforme les projets Scratch en applications web.
Utilisation comme langage d'enseignement[modifier | modifier le code]
Les domaines d'utilisation de Scratch dépassent l'univers scolaire, mais une forte communauté d'enseignants, d'étudiants, de passionnés, exposent et partagent sur le site de Scratch leurs créations, leur créativité et leurs développements.
Le slogan de Scratch est « Imagine·Programme·Partage ! ». Le partage est en effet un fondamental de la pédagogie de Scratch. Recycler des projets existants pour en inventer de nouveaux, telle est la conception de ce micromonde.
Scratch est un environnement de développement, de site web, et un lecteur de scripts Scratch.
Le code source de Scratch est encore en développement. Il est distribué sous deux licences dont la licence GPL. Toutefois, Scratch et d'autres éléments sont des marques déposées (trademarks), dont la redistribution est soumise à contraintes4. Une version ne contenant pas les marques déposées est mise à disposition et permet de distribuer des modifications éventuelles avec une licence GNU GPL. Quelle que soit la version libre ou non, Scratch nécessite des logiciels non libres pour fonctionner, tel Adobe Flash Player.
Dans le monde francophone, des Coding goûters sont organisés autour des outils Scratch avec une communauté spécifique5.
Scratch dans la réforme française du collège de 2015[modifier | modifier le code]
Avec la réforme des collèges en France de 2015 apparaissent les notions de codage et de programmation, et la plateforme d'apprentissage Scratch peut être utilisée dans ce cadre. Le sujet 0 du DNB d'Éduscol6 contient d'ailleurs un exercice dont les questions portent sur des algorithmes réalisés avec Scratch6.
Différents groupes académiques en mathématiques (au travers des travaux académiques mutualisés7 et de l'appel à projet 2016) diffusent des scénarios d'usages de Scratch pour l'enseignement8.
Les différentes briques de codage[modifier | modifier le code]
Le langage Scratch est constitué de multiples briques permettant d'exécuter une action précise. Il existe 10 catégories de briques différentes (classées par couleurs)9 :
Couleur | ||||||||||
Catégorie | Mouvement | Contrôle | Événements | Apparence | Capteurs | Sons | Opérateurs | Stylo | Données | Ajouter blocs |
ScratchJr[modifier | modifier le code]
En Juillet 2014, une application nommée ScratchJr fut disponible sur iPad. En 2016, ScratchJr fut porté sur android. Bien qu'il soit fortement inspiré de Scratch et co-dirigé par Mitch Resnick, créateur initial de Scratch, il s'agit néanmoins d'une réécriture complète destinée aux enfants plus jeunes (5-7 ans)10
Commentaires
Enregistrer un commentaire