vendredi 11 avril 2014

From Scratch

Le logiciel d'apprentissage de la programmation Scratch s'est récemment enrichi. Dans la version Scratch2, il devient possible de créer des variables (locale ou globale), ainsi que des listes. On se sert aussi de la notion de join de façon innovante.

Le join classique se retrouve sourtout dans le travail sur les bases de données. Deux tables faisant partie d'une même base de donnée dite relationelle se servent ainsi d'une même colonne d'information(field), permettant à l'ordinateur de faire des liens dans ses recherches tout en présentant des tables simples pour l'interlocuteur humain. Dans l'exemple ci-bas, la table Cities recense les villes déservie par la firme, tandis que la deuxième Clients se sert du code ville pour plusieurs clients(records). C'est une relation one-to-many et le lien se construit par un join.

En effet la Cities crée un index de code-ville dont se sert la Clients, mais du point de vue informatique, les deux tables se doivent de respecter les lois du one-to-many pour maintenir l'intégrité de la base de donnée: il peut y avoir plusieurs 2 dans la table Clients mains aucun code-ville n'est possible s'il n'apparaît dans la liste Cities. CityID est Primary Key pour la table 1, et Foreign Key pour la 2.


Tech-ICT.com

Le projet ci-dessous à partir de Scratch2, revient à un simple convertisseur denombre du décimal au binaire. Le programme Scratch sait déjà exprimer des nombres décimaux, mai spas des nombres issus d'opérations sur le binaire. ( Plutôt ironique lorsqu'on pense qu'un ordi calcule en binaire et transcrit ses résultats en décimal par le biais de l'encodage ASCII).

Mais voilà, on va mettre la notion de join à contribution. Le join de Scratch est défini dans les opérations. C'est ajouter World à Hello, ici un 0 ou 1 à la file présente; car le calcul se fait de gauche à droite et on épeluche soit un 0 ou un 1 à chaque tour par un jeu de multiplication et division par 2 sur le nombre en entrée et le nombre de tours.

L'ordi fait ce que l'interlocuteur ne fait pas consciemment; en fait pour nous la notion de 14 relève aussi d'un join de quatre unité à la suite de 1 dizaine...


 


Aucun commentaire: