Oggi parliamo di variabili e di blocchi personalizzabili con Scratch, vedremo cosa sono, e a cosa servono, questo perche, in un prossimo progetto andremo a realizzare un gioco tipo piattaforma a più livelli (sfondi), che farà un ampio uso sia delle variabili che di blocchi personalizzabili, perciò cerchiamo di capire come funzionano.
Le variabili
Durante l’esecuzione di un programma, i dati sono immagazzinati nella memoria centrale del computer (RAM). Potete immaginarvela come la parete di cassette che su usano negli uffici postali per smistare la posta. È possibile mettere una lettera in una cassetta, ma questo serve a poco se le cassette non sono etichettate con l'indirizzo di destinazione. Le variabili sono le etichette delle cassette che costituiscono la memoria del computer.
Una variabile, quindi, è un’area della RAM del computer che può essere “pensata” come una scatola che contiene un singolo dato (e.g. un numero, un carattere, una parola, una frase, etc.).
Nell'esempio , è rappresentata una variabile di nome distanza che contiene il dato 50.
Vediamo un esempio pratico:
Lo script che vediamo in figura simula la caduta del gattino.
Vediamo che il gattino cade verso il basso a velocità costante, ma nella realtà un oggetto acquisterà più velocità più lunga sarà la caduta.
Come possiamo risolvere il problema...
Semplicemente creando una varibile che ci servirà per incrementare la velocita di caduta nel tempo, andiamo su crea variabile e per ricordarci a cosa fà riferimento questa variabile la chiameremo velocità.
Vediamo come inserire la variabile velocita nel nostro script:
Come prima cosa abbiamo usato il blocco porta velocita a 0 (serve per riportare a 0 il valore della variabile ogni volta che clicchiamo su bandiera verde), quindi nel blocco per sempre abbiamo i blocchi cambia velocità di -1 (la velocità di caduta aumenta di -1 ogni frame "fotogramma"), quindi blocco cambia y di velocità, (sposta lo sprite verso il basso in base alla velocità di caduta).
Se mettiamo la spunta sul blocchetto velocita, vedremo nello Stage come viene incrementato il valore della variabile.
Vediamo un altro esempio di come utilizzare una variabile, in questo caso il programma richiede in input il nome dell’utente che verrà memorizzta nell variabile Nome . Viene infine fornito in output l’unione della stringa “Ciao” con l’unione della variabile nome.
I blocchi personalizzabili
Lo strumento "Crea un Blocco" che Scratch ci mette a disposizione è molto più potente di quanto non sembri. Tramite quello strumento possiamo creare dei blocchi personalizzati da utilizzare nei nostri progetti come delle vere e proprie funzioni, con la possibilità di richiamarli quando vogliamo e di passare degli argomenti da elaborare.
Cosa serve, ci permette di definire azioni non predefinite che non compaiono negli altri blocchi che normalmente usiamo.
Questi blocchi personalizzati compiranno delle azioni, appunto personalizzate, ottenute componendo insieme i blocchi che usiamo normalmente e potranno essere usate semplicemente richiamando il blocco personalizzato che eseguirà le istruzioni che avremo definito.
Che senso ha utilizzare questa funzione?
Spesso ci potra capitare che una stessa sequenza di operazioni dovra essere ripetuta piu volte nello stesso script, eseguendo le stesse funzioni, per questo utilizzando un blocco personalizzato non avremo piu bisogno di riscrivere la stessa serie di blocchi per più volte, considerando anche che avremo uno script più pulito e professionale.
Vediamo in pratica come utilizzarlo.
Vogliamo creare uno script che compia una serie di operazioni matematiche:
Inseriamo un blocco personalizzato, selezioniamo Crea un Blocco, si aprira una finestra come vediamo sotto:
Mettiamo come nome una parola che faccia riferimanto alla funzione che ci serve in questo caso possiamo scrivere moltiplica, ora come vediamo sotto abbiamo la possibilità di aggiungere un argomento cioè informazioni extra ( numero o testo, boleano (vero o falso) e una semplice scritta), per il nostro esempio dovremo indicare quale deve essere il primo numero da moltiplicare e quale deve essere il secondo numero , perciò clicchiamo 2 volte su aggiungi un numero o testo, nelle caselle che si apriranno accanto al nome del blocco possiamo inserire 1_numero e 2_numero.
Vediamo ora come inserire il nostro blocco personalizzato allo script:
Possiamo richiamare tutte le volte che vogliamo il blocco, per esmpio possiamo aggiungere una altra serie di operazioni inserendo un altro blocco moltiplica per eseguire un altra operazione come moltiplicare il risultato ad un numero a caso 200.
Vediamo un altro esempio;
in questo script utilizzeremo la penna per disegnare una figura geometrica complessa, lo script ripeterà un serie di cicli 36 x 36 volte, lo sprite sarà ridisegnato 1296 volte, perciò come vedremo lo script terminerà di disegnare in un tempo abbastanza lungo.
Ora utilizzeremo un blocco personalizzato con l'opzione Esegui senza aggiornare lo schermo , che in pratica evita il refresh dello stage.
Andiamo su crea blocco, come nome possiamo scrivere disegna e cosa importante mettiamo la spunta sul opzione Esegui senza aggiornare lo schermo, vediamo come inserire il blocco disegna nello script.
Come vedremo lo script disegnerà la forma geometrica quasi immediatamente.
Con questo abbiamo terminato, vedremo in seguito come sfruttare al meglio questi due blocchi personalizzabili nei nostri script.
Comments