modulo1 – CODING e PENSIERO COMPUTAZIONALE
Indice del modulo:
Codificazione binaria; Approccio agli algoritmi e ai diagrammi di flusso; Rappresentazione e risoluzione di semplici problemi; Coding e pensiero computazionale; Principi di programmazione LOGO; Ambiente di programmazione Scratch.
Prima di entrare nel dettaglio dei contenuti, qui sono disponibili alcuni video tutorial e alcune slide sul pensiero computazionale e il coding
La Codificazione binaria
Noi utilizziamo da moltissimo tempo dieci simboli o cifre per poter contare: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Questo perchè la calcolatrice è un’invenzione relativamente recente, quindi un tempo si contava con le 10 dita delle mani: il nostro è un sistema di numerazione decimale, cioè un sistema di numerazione in base dieci. Utilizzando le cifre da 0 a 9 possiamo scrivere tutti gli altri numeri.
ESEMPIO: Il numero 14 è formato da 1 decina (un insieme di 10 unità) + 4 unità. La somma delle quantità dà come risultato la quantità “quattordici”.
basi di raggruppamento
Puoi raggruppare un numero in diversi modi, chiamati basi numeriche: usando le dita delle mani per raggruppare le unità (a ogni dito corrisponde un’unità), formato un gruppo di dieci, si mette da parte la decina. In questo caso stai raggruppando i numeri in base dieci.
Grazie al sistema di numerazione decimale puoi combinare le 10 cifre da 0 a 9 per rappresentare tutti i numeri ed eseguire tutte le operazioni.
Il numero 147 è formato da: 1 centinaio (ovvero un gruppo di 10 decine), 4 decine (cioè 4 gruppi di 10 unità) e 7 unità. Sommando queste quantità otteniamo come risultato “centoquarantasette”.
Nel sistema di numerazione decimale la posizione di ciascuna cifra ne determina il significato, per questo il sistema viene definito “posizionale”.
33 significa: 3 decine (3 gruppi di 10 unità) + 3 unità.
Il numero 3 ha un significato diverso a seconda della posizione che occupa (decina o unità).
Contare con il sistema di numerazione decimale significa raggruppare per dieci prima le unità, poi le decine, poi le centinaia per formare le migliaia e così via.
La struttura binaria dell’informazione
I numeri si possono raggruppare in base al sistema di riferimento: il computer conosce solo le cifre 0 e 1 e fa raggruppamenti per 2, quindi usa la base 2.
Abbiamo visto come il codice o sistema binario ci permette di rappresentare con i simboli 0 e 1 lo stato di un interruttore (chiuso o aperto).
Questo stato corrisponde a una informazione: è come se il computer abbia una lampadina che si accende (1) o che si spegne (0) quando vuole comunicare. Infatti i circuiti elettronici che compongono il computer funzionano esattamente come interruttori, in modo binario: non lasciano passare corrente quando sono chiusi (ON), e lasciano passare corrente quando sono aperti (OFF).
Per riassumere, i circuiti del computer possono essere:
- accesi\chiusi (bit 1)
- spenti\aperti (bit 0)Con due possibili combinazioni (spento o acceso) si può rappresentare qualsiasi quantità, quindi qualsiasi informazione: il linguaggio binario è adatto al computer perché rappresenta la logica del funzionamento dei circuiti elettrici.
Esempio
Hai invitato a casa tua un amico per giocare, ma non sei sicuro di essere a casa quando arriverà. Supponendo di non poter utilizzare il cellulare o il citofono, come puoi comunicargli che non sei in casa?
Una possibile soluzione potrebbe essere quella di dire al tuo amico di guardare in direzione della finestra della tua cameretta: se le luci sono accese vuol dire che sei a casa, mentre se le luci sono spente significa che non sei ancora tornato.
Quindi:
Se le luci sono accese: sei a casa
Se le luci sono spente: non sei a casa
Se sostituisci a ogni “stato” della lampadina un simbolo scelto fra quelli del codice binario (0 e 1) ottieni:
- 0 non sono in casa
- 1 sono in casa
Dunque, sfruttando lo “stato” di una sola lampadina (accesa o spenta), puoi rappresentare due informazioni:
Come fa un computer a comunicare informazioni con soli due simboli?
Come abbiamo visto, i due simboli 0 e 1 corrispondono a un bit. Per poter comporre un’informazione, i bit si uniscono in gruppi di otto elementi, chiamati byte.
In un byte, ciascun bit può assumere il valore 0 o 1. Complessivamente un byte può assumere fino a 256 combinazioni. Infatti, moltiplicando il numero 2 per se stesso 8 volte, abbiamo:
2 X 1 = 2 → 2 X 2 = 4 → 4 X 2 = 8 → 8 X 2 = 16 → 16 X 2 = 32 → 32 X 2 = 64 → 64 X 2 = 128 → 128 X 2 = 256
Quindi in un singolo byte le possibili informazioni sono duecentocinquantasei.
Una memoria digitale
Si compone di una certa quantità di informazioni espresse in byte e può contenere un grande numero di dati: possiamo archiviare in un computer una grande quantità di immagini, di video, di file musicali o di documenti di testo. Le memorie digitali sono archiviate su appositi dischi (supporto digitale di memoria), di forma e capacità differente di memoria. Di recente si stanno diffondendo le memorie digitali online come GoogleDrive che rendono i dati disponibili da qualsiasi computer purché collegato ad internet.
La capacità di memoria è espressa con i multipli del bit. In questa tabella trovi tutti i multipli del bit e del byte.
SIMBOLO |
UNITÀ DI MISURA |
GRANDEZZA |
SUPPORTO DIGITALE DI MEMORIA |
Bit |
Unità di base |
0, 1 |
|
B |
Byte |
8 bit |
|
KB |
Kilobyte |
1024 Byte |
|
MB |
Megabyte |
1024 KB |
CD-Rom – chiavetta USB |
GB |
Gigabyte |
1024 MB |
DVD – chiavetta USB – Hard Disk del computer – Hard Disk ester- no |
TB |
Terabyte |
1024 GB |
Hard Disk del computer – Hard Disk esterno |
Approccio agli algoritmi e ai diagrammi di flusso
Concetto di algoritmo
Quotidianamente svolgiamo attività costituite da una sequenza di azioni che spesso vengono eseguite in modo istintivo. Per mandare un sms a un amico, si compie questa sequenza di azioni: 1- Si prende il cellulare; 2- Si apre un sms vuoto; 3- Si scrive il testo del messaggio; 4- Si seleziona il destinatario; 5- Si invia il messaggio.
Questa sequenza di azioni è la soluzione di un problema; il problema è: come fare per mandare un sms a un amico?
Questo esempio spiega cos’è un algoritmo: una procedura sequenziale che si può applicare e ripetere a piacere.
Possiamo utilizzare il computer per risolvere problemi in quanto esso applica un algoritmo ai dati che andiamo a immettere, secondo queste fasi:
- Si immettono i dati iniziali del problema;
- I dati iniziali del problema vengono elaborati secondo una successione finita di istruzioni che il computeresegue;
- Il computer produce dei risultati in base ai dati e al tipo di algoritmo che li ha elaborati.
Analisi di un semplice algoritmo
Ora possiamo schematizzare con chiarezza come funziona un computer.
- I dati iniziali vengono inseriti nel computer attraverso la tastiera o il mouse (INPUT).
- I dati vengono elaborati dal “cervello” del computer, che si chiama CPU (Central Processing Unit), che si costituisce di due parti: la ALU (Arithmetic and Logic Unit), che esegue calcoli; e la CU (Control unit), che verifica la corretta elaborazione dei calcoli.
- Il risultato (i dati finali elaborati dal computer) viene visualizzato sul monitor e può essere stampato su carta (OUTPUT).
Il “cervello” del computer, l’hardware, per poter funzionare utilizza il software, un insieme di programmi paragonabile al “pensiero” del computer, che è un algoritmo complesso.
Concetto di diagramma di flusso (flow chart)
Il computer non funziona autonomamente: non esegue istruzioni se non gliele comunichiamo con la massima precisione. Queste istruzioni vanno dunque scritte in un algoritmo.
Come si rappresenta un algoritmo con un diagramma?
Per rappresentare un algoritmo si utilizza un disegno chiamato diagramma di flusso, secondo queste indicazioni:
- comunicare al computer che sta iniziando una sequenza di azioni (START)
- definire in modo chiaro le istruzioni che deve eseguire;
- definire l’ordine delle istruzioni (la sequenza dalla prima all’ultima);
- comunicare al computer quando terminare le istruzioni da eseguire (STOP). Esempio per gli alunni
Esempio del diagramma di flusso che rappresenta la sequenza di azioni che si compiono quando si manda un sms a un amico:
Come si disegna un diagramma di flusso?
Con il diagramma di flusso, in inglese flow chart, si rappresentano gli algoritmi. Il diagramma di flusso presenta sempre:
- un’istruzione per iniziare (blocco iniziale);
- alcune o molte azioni di elaborazione (blocco di elaborazione);
- un’istruzione per finire (blocco finale).
Ogni istruzione indica che il computer deve eseguire un’azione e viene rappresentata con forme diverse, infatti a ogni forma corrisponde un preciso significato.
Come leggere un diagramma di flusso?
Leggere un diagramma di flusso è semplice, basta seguire le frecce:
- leggi il blocco iniziale e segui la freccia in uscita;
- leggi il blocco successivo ed esegui quello che è scritto;
- continua così fino alla fine del diagramma.
In base a quanto visto finora, siamo pronti per disegnare il diagramma di flusso dell’algoritmo “mandare un sms a un amico”, prestando attenzione a:
- utilizzare le forme appropriate per ogni azione;
- colorare allo stesso modo le forme simili;
- tracciare le frecce nella giusta direzione;
- inserire un problema e le relative istruzioni per risolverlo.
Nel diagramma di flusso seguente c’è una piccola complicazione che permette di rappresentare una decisione, un’opzione del tipo “se > allora”.
Rappresentazione e risoluzione di semplici problemi
Certamente hai imparato a risolvere i problemi di matematica utilizzando dati e numeri. Ora vediamo come risolvere semplici problemi utilizzando una rappresentazione grafica del problema: il diagramma di flusso che abbiamo studiato è la rappresentazione grafica di un problema.
Il diagramma infatti è una rappresentazione grafica di dati e ha la funzione di renderli visibili e quindi più facilmente interpretabili. Attraverso un diagramma si può descrivere più chiaramente una situazione e quindi risolverla con più facilità.
L’informatica (informazione + automatica) è la scienza che studia il modo in cui un computer può risolvere un problema elaborando dati e informazioni. Grazie ai diagrammi si può capire come risolvere problemi e dialogare con il computer.
Semplifichiamo ulteriormente il diagramma che spiega come funziona il computer:
FASE DI IMPUT ⇒ FASE DI ELABORAZIONE ⇒ FASE DI OUTPUT
Il diagramma qui sopra illustra sinteticamente le fasi di funzionamento del computer:
- si immettono nel computer i dati da elaborare (fase di INPUT);
- il computer elabora i dati inseriti (fase di elaborazione);
3. i dati elaborati vengono restituiti dal computer sottoforma di nuove informazioni e visualizzati sullo schermo (fase di OUTPUT).
Il diagramma descrittivo descrive semplicemente un processo (in questo caso il funzionamento di un computer), quindi si utilizza per rappresentare le fasi di funzionamento di una “macchina”.
Le macchine di calcolo sono diagrammi che richiedono dei calcoli per ottenere un risultato, e hanno la funzione di semplificare la comprensione e la risoluzione di un problema.
Come si risolve un problema?
Classificazione delle informazioni
Sappiamo che le informazioni sono dati immessi nel computer, elaborati, e restituiti sottoforma di nuovi dati, che possono essere visualizzati sullo schermo o stampati. I dati possono essere testi, immagini, numeri, suoni, video ecc.
Definizione di grafico e di tabella
Le tabelle e i grafici servono per rappresentare in modo chiaro i dati, vediamo come.
Una tabella è una griglia formata da righe orizzontali e colonne verticali. Come nel diagramma cartesiano, ogni casella della tabella è nell’intersezione tra una riga orizzontale e una colonna verticale, identificata da etichette con numeri e lettere oppure con nomi più complessi.
L’intersezione delle righe e delle colonne crea delle celle, ovvero spazi in cui inserire parole e numeri, oppure formule complesse che permettono di eseguire calcoli.
Tabella: Griglia formata dall’intersezione di righe orizzontali e colonne verticali; questa intersezione genera spazi che si chiamano celle. Ogni cella si identifica da una coordinata orizzontale e da una verticale.
Grafico: Rappresenta i risultati di dati che sono stati raccolti nel tempo, in una tabella o in una griglia.
Ora proviamo a disegnare su un foglio quadrettato il diagramma cartesiano relativo ai dati della tabella precedente.
Sull’asse orizzontale (X) scriviamo i giorni della settimana, mentre sull’asse verticale (Y) scriviamo le ore di sonno. Dopo aver individuato i punti inserendo i dati delle coordinate, colleghiamoli con una linea tratteggiata. In questo modo otteniamo il grafico cartesiano, una rappresentazione che mostra visibilmente in modo intuitivo le variazioni settimanali della quantità di sonno. Le informazioni sono le stesse, ma mostrate in modo differente.
Nell’esempio che segue, per semplicità non abbiamo riportato tutte le ore di sonno (da 1 a 11), ma solo l’intervallo compreso tra la massima e la minima quantità di ore di sonno.
Coding e pensiero computazionale
Al giorno d’oggi le moderne tecnologie dell’informazione e della comunicazione accompagnano le persone nella maggior parte delle attività che svolgono, sia in ambito lavorativo, sia in ambito familiare.
Tutto ciò ha modificato radicalmente il modo di vivere, di studiare, di trascorrere il tempo libero, ma è indispensabile formare le nuove generazioni in maniera tale da rendere i cittadini del futuro non soltanto passivi utenti di mezzi elettronici, ma anche e soprattutto persone capaci di creare autonomamente nuove applicazioni digitali.
Da qui nasce l’esigenza di avvicinare gli studenti delle scuole di ogni ordine e grado al pensiero computazionale, cioè al modo con il quale il computer elabora le informazioni per risolvere qualsiasi tipo di problema, e al linguaggio di programmazione, detto anche Coding.
Concetto di programmazione e di pensiero computazionale
Con il termine inglese Coding si fa riferimento alla realizzazione di una sequenza di istruzioni che permettono a un computer di eseguire svariati compiti.
Nella società attuale il Coding rappresenta sicuramente il linguaggio più diffuso, essendo l’unico veicolo che permette la “comunicazione” tra persone e computer. Inoltre programmare aiuta a sviluppare competenze logiche e capacità di risolvere problemi in modo efficiente. Prima di imparare questo nuovo linguaggio, è necessario che gli alunni di ogni classe imparino ad affrontare diversi problemi applicando la logica utilizzata dai computer, anche attraverso giochi. In altri termini capiscano come “pensa” un computer (pensiero computazionale). L’informatica, infatti, non ha introdotto soltanto strumenti innovativi, ma un nuovo e diverso modo di pensare.
I pensatori computazionali sono in grado di risolvere i problemi con soluzioni computazionali, cioè raggiungono la soluzione dei problemi utilizzando algoritmi e dati.
Una qualsiasi azione della persona, alla luce del pensiero computazionale, può essere descritta come un processo che da uno stato di partenza raggiunge uno stato finale con azioni elementari (algoritmo).
La sequenza dei passi da compiere consiste nell’analizzare a fondo il problema per comprenderne la natura, e poi risolverlo utilizzando un algoritmo, formato da semplici istruzioni che possono essere tradotte in linguaggio computazionale (Coding).
Principi di programmazione LOGO
Abbiamo visto che i bit 0 e 1 sono i codici fondamentali per comunicare con il computer.
Un programma è un insieme di istruzioni che il computer esegue per elaborare calcoli o altre operazioni. Per scrivere un programma occorre un linguaggio di programmazione. Esistono diversi linguaggi di programmazione, scelti a seconda del problema che si deve risolvere. Per esempio, Basic è adatto per risolvere problemi commerciali e scientifici, Cobol è utilizzato per risolvere problemi commerciali, Pascal per problemi di matematica; Javal e Visual Basic offrono soluzioni per visualizzazioni grafiche.
Per imparare a scrivere un programma utilizziamo il linguaggio di programmazione LOGO, inventato dall’americano Seymour Papert:
LOGO è un ambiente di programmazione dove daremo istruzioni a una “tartaruga” (entità geometrica a forma di triangolo) per farla spostare sullo schermo. Questa tartaruga occupa una certa posizione nel piano ed è orientata (per esempio può trovarsi in un dato punto P ed essere orientata verso nord) e quando si muove lascia una traccia: in questo modo si può disegnare qualsiasi figura geometrica.
Al centro della finestra del programma LOGO si trova la tartaruga nella sua tana. Se scrivi le istruzioni per farla muovere, potrai disegnare figure geometriche sullo schermo del programma. Le istruzioni scritte potranno essere salvate e memorizzate, diventando un programma, che potrai usare quando vuoi per disegnare velocemente.
Muovendo la tartaruga sullo schermo, possiamo disegnare figure geometriche differenti. Questi sono i principali comandi per effettuare lo spostamento:
Le aree operative della finestra LOGO
Quando apriamo il programma LOGO, viene visualizzata la seguente finestra di dialogo, dove ci sono alcune aree operative che hanno le seguenti funzioni:
Nella barra dei menu ci sono le seguenti opzioni:
FILE
È l’elemento della barra che contiene i comandi principali per la gestione del programma. Nuovo: cancella le procedure caricate in memoria.
Apri: apre una finestra di dialogo in cui selezionare una procedura da caricare.Salva: salva le procedure create. Salva con nome: assegna un nome al file con le procedureche si stanno creando. Modifica: apre una finestra di dialogo in cui selezionare una procedura da modificare. Cancella: apre una finestra di dialogo in cui selezionare una procedura da cancellare. Esci: chiude il programma.
DISEGNO
È l’elemento della barra che contiene i comandi utili per aprire, salvare e stampare i disegni realizzati con i comandi direzionali (avanti, indietro, sinistra, destra ecc…)
Nuovo: pulisce lo schermo.Apri: apre una finestra di dialogo in cui selezionare il file di un disegno già realizzato e memorizzato da caricare. Salva: salva il disegno creato. Salva con nome: assegna un nome al file relativo al disegno che si sta creando.Stampa: stampa il disegno. Imposta stampante: sceglie la stampante e le caratteristiche della stampa. Area attiva: consente di selezione l’area di lavoro da salvare o da stampare.
OPZIONI
Contiene i comandi per cambiare le dimensioni e i colori della penna, quelli dello schermo, le dimensioni e il tipo dei caratteri utilizzati da LOGO.
ZOOM
Ingrandisce o rimpicciolisce il disegno.
Utilizzare i comandi primitivi per muovere, ruotare la “tartaruga”, secondo parametri dati
E’ utile tenere a mente le seguenti indicazioni prima di cominciare a far muovere la tartaruga:
- Lo stato iniziale della tartaruga: posizione al centro, orientamento a nord (la tana della tartaruga)
- Digitando il comando TANA, la tartaruga tornerà nello stato inziale.
- Quando digiti i comandi, LOGO non fa distinzione tra lettere minuscole e maiuscole.
- Quando hai terminato il lavoro, puoi uscire dal programma utilizzando il comando Esci dal menu File o digitando l’istruzione Ciao sulla linea dei comandi.
Ora possiamo iniziare a muovere la tartaruga!
Cominciamo a scrivere nella linea dei comandi alcune istruzioni e a muovere la tartaruga, ricordando che LOGO ricorda il significato di alcuni comandi senza che vengano spiegati: sono istruzioni semplici, chiamate istruzioni primitive.
Vediamone alcune.
MUOVERE LA TARTARUGA IN AVANTI O INDIETRO
Il comando Avanti 50 Esegui muove la tartaruga di 50 passi (50 pixel) in questo caso (nell’immagine sotto) verso l’alto, lasciando una traccia del suo spostamento. Il comando Indietro 50 Esegui fa muovere la tartaruga verso il basso.
RIPETIZIONE AUTOMATICA DI UN’ISTRUZIONE
Con un doppio clic sul comando si ordina al computer di ripetere l’ esecuzione del comando e di fare avanzare ancora la tartaruga.
FAR RUOTARE LA TARTARUGA A DESTRA O A SINISTRA
Il comando Destra 90 Esegui muove la tartaruga e la fa ruotare di 90° in senso orario: cambia il suo orientamento, ma non la posizione. Il comando Sinistra 90 Esegui fa ruotare la tartaruga in senso antiorario.
CREARE UNA PROCEDURA: “PER QUADRATO”
LOGO può apprendere nuovi comandi se sono realizzati con istruzioni primitive. Se intendi insegnare alla tartaruga LOGO come si disegna un quadrato, potresti creare una nuova procedura: la procedura “per quadrato”. Tieni presente che:
- all’inizio del blocco di istruzioni trovi la dichiarazione per quadrato (per tracciare un quadrato);
- a è un’abbreviazione di avanti;
- d è un’abbreviazione di destra;
- alla fine del blocco di istruzioni trovi la dichiarazione fine (che indica la fine della procedura).
Ecco le istruzioni.
per quadrato
a 50
d 90
a 50
d 90
a 50
d 90
a 50
Fine
Per creare una procedura, è necessario entrare nell’ambiente Editor, poi: 1) Apri il menu File. ⇒ 2) Seleziona il comando Modifica.⇒ 3) Nella finestra successiva sono elencate le procedure già create e memorizzate. ⇒ 4) Fai clic su OK per entrare in ambiente Editor e creare una nuova procedura. ⇒ 5) digita le istruzioni della procedura per quadrato.
PULIRE LO SCHERMO
Prima di eseguire una procedura è meglio pulire lo schermo LOGO digitando la seguente istruzione: ps Esegui.
ESEGUIRE UNA PROCEDURA: “PER QUADRATO”
La procedura creata e salvata può essere ora eseguita tutte le volte che serve, disegnando il quadrato con una sola istruzione; digita la seguente istruzione: quadrato Esegui.
Mostrare e nascondere la “tartaruga”
Nella tabella che segue sono indicate le istruzioni primitive di LOGO tra cui “mostrare” e “nascondere”.
Modificare lo sfondo della finestra di lavoro
Con LOGO puoi anche modificare il colore dello sfondo, inizialmente bianco. Puoi farlo in due differenti modi:
- Con l’opzione Colore Schermo dalla Barra dei Menu;
- Con la primitiva ASCOLORSCHERMO (ABBR. = ASCS).
Coordinate cartesiane
Finora abbiamo imparato a muovere e modificare la direzione della tartaruga grazie ai comandi grafici locali di LOGO. In questo ambiente è possibile anche collegare direttamente i punti del piano, utilizzando il comando: aspos (assegna posizione), che presenta una lista di due elementi:
- Il primo elemento della lista è la coordinata delle ordinate;
- La seconda coordinata è quella delle ascisse;
- Il centro dello schermo, dove si posiziona la tartaruga quando digiti ps, ha coordinate [0 0]. Per esempio se scrivi i comandi:
ps
aspos [0 200]
aspos [200 0]
aspos [0 0]
Otterrai questa figura geometrica:
A questo link puoi esercitarti a programmare con LOGO online
[sp_html5video category=”40″]
Ambiente di programmazione Scratch
Utilizziamo in questo percorso un ambiente di programmazione visuale semplice e intuitivo: il software gratuito Scratch, sviluppato dal Lifelong Kindergarten Group presso il Media Lab del Massachusetts Institute of Technology, che si basa su un linguaggio di programmazione a blocchi e permette anche ai ragazzi di creare storie interattive, animazioni, giochi, musiche e prodotti artistici. Con Scratch è possibile realizzare diversi oggetti multimediali semplicemente incastrando dei mattoncini digitali che hanno funzioni differenti. In questo modo i ragazzi possono interagire con gli strumenti informatici non solo in maniera passiva, ovvero semplicemente usandoli, ma anche in maniera attiva, cioè programmandoli direttamente. Le diverse attività possono essere condotte come un gioco in quanto si concretizzano in tempo reale sullo schermo, stimolando l’interesse dei ragazzi nei confronti dell’informatica, in particolare della programmazione.
Introduzione a Scratch
La programmazione è completamente grafica: ciò permette anche ai ragazzi di costruire strutture semplici o complesse solo incastrando mattoncini intelligenti di diversi colori. In base al risultato che si intende raggiungere, si scelgono le istruzioni più adatte, semplificando le azioni complesse in blocchi elementari.
Anche per il programma Scratch esiste un sito dedicato in cui è possibile esercitarsi online, ma in inglese. Per questo, dopo aver studiato un po’ questa dispensa è consigliabile esercitarsi con il programma scaricato sul PC per il quale esiste una versione in italiano già installata sui computer dell’aula informatica della scuola.
Nell’ambiente Scratch gli elementi essenziali sono: l’area di lavoro detta Stage, gli Sprite, ossia oggetti digitali programmabili, che possono muoversi, suonare o interagire tra di loro collegando blocchi grafici in elenchi chiamati Script.
L’interfaccia di Scratch
In alto a destra dei menu c’è la Barra degli Strumenti in cui è possibile selezionare i comandi per duplicare, cancellare Sprite, costumi, suoni, blocchi e Script. E per espandere o ridurre lo Sprite.
- L’icona Salva serve a salvare il progetto in corso. L’icona Condividi carica il progetto sul sito web di Scretch.
- L’icona consente di scegliere la lingua.
- Il menu File consente tra le varie funzioni di creare un nuovo progetto, aprire un progetto esistente o salvare i progetti nella cartella di Scratch o in altre posizioni.
Note di Progetto permette di scrivere e salvare le note del progetto.
Chiudi permette di uscire dal programma Scratch.
Il menu Modifica rende disponibili diverse possibilità per modificare il progetto corrente.
Annulla permette di recuperare l’ultimo blocco, Script o Sprite cancellato. Con Avvia passo-passo è possibile eseguire i programmi Scratch un passo alla volta e ogni blocco è evidenziato nel momento in cui viene eseguito. Questa opzione risulta particolarmente utile per evidenziare errori nei programmi e per aiutare i nuovi programmatori a seguire il flusso del programma.
Con Comprimi suoni o Comprimi immagini si riduce la dimensione di un progetto. Lo Stage è l’area in cui gli Sprite si muovono ed interagiscono tra loro.
Sprite
I progetti di Scratch si sviluppano intorno ad oggetti chiamati Sprite, ai quali è possibile fornire una grande varietà di istruzioni, collegando tra loro dei blocchi grafici (mattoncini) che si uniscono solo se la connessione ha effettivamente senso, formando così i cosiddetti elenchi (Script). All’inizio di un nuovo progetto di Scratch appare uno Sprite con le sembianze di un gatto.
Nell’Area degli Sprite ci sono le anteprime degli Sprite del progetto con i relativi nomi in basso.
Per vedere e modificare gli Script, i costumi e i suoni di uno Sprite bisogna cliccare una volta sull’anteprima dello Sprite o cliccare due volte sullo Sprite all’interno dello Stage (lo Sprite selezionato appare evidenziato da una cornice blu) e poi scegliere la relativa scheda (script, costumi, suoni).
Nello stesso modo in cui uno Sprite può modificare il proprio aspetto cambiando costume, anche lo Stage può modificare il proprio aspetto cambiando sfondo. Per vedere e modificare gli Script, gli sfondi e i suoni associati allo Stage basta cliccare sull’anteprima dello Stage alla sinistra della Lista degli Sprite.
Nella scheda Costumi ci sono quattro diverse modalità di creare nuovi costumi:
(Disegna): Consente di disegnare un nuovo costume con l’Editor di Immagini.
(Importa): Consente di importare il file immagine dall’hard disk.
(Webcam): Consente di scattare una foto con la webcam.
Infine ricorda che è possibile trascinare sulla scheda Costumi una o più immagini dal web. Scratch riconosce molti formati di immagini: JPG, BMP, PNG, GIF.
Cliccando sulla linguetta Suoni appaiono i suoni associati allo Sprite, che possono sia essere scelti all’interno di una raccolta sia essere registrati dall’utente.
L’Area Informazioni Sprite (dettaglio in basso) mostra il nome dello Sprite selezionato, la sua posizione x-y, la sua direzione e il suo stato di blocco. Per cambiare il nome dello Sprite, basta digitare all’interno della relativa casella.
Direzione indica in quale direzione lo Sprite si muove quando esegue un blocco di movimento (0=su, 90=destra, 180=giù, -90=sinistra).
Area di Blocchi
Nell’Area dei Blocchi sono presenti tutti i blocchi disponibili per la programmazione: ad ogni colore è associato un tipo di comando.
- I blocchi di colore blu rappresentano i comandi relativi al movimento dello Sprite
- I blocchi di colore giallo sono relativi al controllo dello Sprite
- I blocchi di colore viola si riferiscono all’aspetto dello Sprite
- I blocchi di colore azzurro hanno la funzione di sensori
- I blocchi di colore rosa riproducono musica ed effetti sonori
- I blocchi di colore verde chiaro si riferiscono alle operazioni aritmetiche
- I blocchi di colore verde scuro sono relativi all’uso della penna
- I blocchi di colore arancione permettono la creazione di nuove variabili.
In base alla loro forma, invece, i blocchi si dividono in:
Blocchi impilabili, che possono essere incastrati per formare delle sequenze; Cappelli; Reporter
Alcuni blocchi contengono un’area di input in cui possono essere inseriti numeri o altri caratteri , altri offrono la possibilità di scegliere un valore da un menu a discesa (come ad esempio il valore ‘spazio’ nel blocco ), altri ancora, hanno una “bocca” a forma di C al cui interno possono essere inseriti altri blocchi.
Dalla teoria alla pratica
Proviamo, a questo punto, a realizzare un paio di semplici programmini, di difficoltà via via crescente.
1. Il primo obiettivo consiste in uno sprite (gattino) che si muove a ritmo di musica. Trasciniamo un blocco fai passi nell’area degli Script. Trasciniamo quindi un blocco suona tamburo, unendolo al blocco fai passi
Per ascoltare basta cliccare sul blocco appena inserito.
Aggiungiamo un altro blocco fai passi: questa volta