Corso: corsommj  
Titolo: Definire procedure   Superiore: Esercitazioni avanzate  
Collegamenti: Definire procedure (sequenze di comandi)

Un problema cui abbiamo già accennato è quello dell'"inizializzazione" del nostro progetto.
In sostanza si vorrebbe che:
- il progetto venisse sempre aperto sulla prima pagina (di copertina);
- alla pressione del pulsante che già abbiamo preparato, l'utente (in modalità presentazione) passasse alla seconda pagina (quella che contiene i personaggi che si incontrano) che questi si trovassero già in posizione di partenza e che si avviassero "da soli" all'incontro e al dialogo...
Il primo problema sappiamo già come risolverlo. Basta che salviamo il nostro file sempre dalla prima pagina Creare un pulsante.
Per risolvere il secondo problema sarà necessario introdurre nuovi concetti, tra cui quello di "procedura".

Una procedura è una sequenza registrata di comandi, per così dire, "sintetizzati" in un unico comando di ordine superiore, che diventa a propria volta un comando come gli altri e che, tra l'altro, può essere a propria volta inserito in procedure di ordine secondario... Questa possibilità di costruire comandi che sintetizzano i comandi base (le cosiddette "primitive") è una delle caratteristiche più interessanti e potenti del Logo ed è presente fin dalle primissime versioni.

In questo esempio, benché non sarebbe strettamente necessario ai fini di ciò che vogliamo ottenere, costruiremo due procedure che sintetizzino i comandi necessari a spostare le due tartarughe in posizione di partenza.
Apriamo allora il nostro file di esercitazione e posizioniamoci sulla seconda pagina.
Accertiamoci di avere a disposizione l'archivio dei comandi:

arccomandi.jpg

(Se questo non fosse visibile clicchiamo su tarta.jpg ) e facciamo clic con il pulsante destro del mouse (o usiamo la "chiave") su uno degli spazi vuoti a destra della sezione dell'archivio dei comandi.
Si apre una finestra di dialogo molto simile a quelle che abbiamo già visto anche se sono presenti dei pulsanti nuovi (vedremo in seguito la loro funzione)

finestra_proc1.jpg

E' la finestra della "Procedura 1". Questa procedura servirà a spostare la tartaruga -bambino in posizione iniziale, ad "inizializzarla", appunto, appena l'utente entrerà nella pagina.

Per ora inseriamo i seguenti comandi nella linea delle istruzioni:

nascondi.jpg "nt" cioé "NascondiTartaruga"; serve a rendere invisibile la tartaruga ed i suoi movimenti

tana.jpg "tana"; serve a riportare la tartaruga al centro dello schermo da qualsiasi posizione essa si trovi

passi.jpg "av" cioè "Avanti" (o "Indietro", se si associa un valore negativo); serve a spostare la tartaruga del valore selezionato; in questo caso selezioniamo un valore intorno a -135 (negativo)

ruota.jpg "de" o "si" cioé "Destra" o "Sinistra" cui va associato un valore selezionandolo nella finestra analogica che già conosciamo. In questo caso facciamo in modo che la tarta giri a sinistra di 90 gradi

Ancora due volte il comando "Avanti -160" (equivalente a "Indietro 160") selezionando due comandi passi.jpg e selezionando il valore appropriato.

Infine facciamo in modo che la tartaruga torni visibile, inserendo il comando "MT" cioé "MostraTartaruga" mostra.jpg.

Confermiamo con un "Ok"

Il risultato complessivo per la "Procedura 1" dovrebbe apparire così:

procedura1.jpg

Per concludere questo nodo vediamo ora la funzione dei pulsanti che ancora non conosciamo:

ripeti.jpg Agendo sulle due freccette si può determinare quante volte la linea di istruzioni viene ripetuta (in questo esempio non utilizzeremo questa funzione e lasceremo il "Ripeti 1")

traccia.jpg Cliccando ripetutamente sul pulsante "Traccia" possiamo verificare passo passo l'esecuzione dei comandi che sono inseriti nella linea delle istruzioni

chiedia.jpg Cliccando il pulsante "Chiedi a" potremo fare in modo che la procedura in questione sia eseguita da una specifica tartaruga presente sulla pagina corrente (ma in questo esempio non utilizzeremo questa funzione)

testo_proc.jpg E' una funzione molto interessante. Cliccando su questo pulsante possiamo passare alla versione testuale della procedura, scritta in linguaggio Logo.

finestra_testo_proc.jpg

Per questo esempio non è assolutamente necessario conoscere i comandi in formato testo, ma è chiaro che per i bambini un po' più grandi il potere passare ad un linguaggio scritto, e potere intervenire direttamente modificando anche in tale contesto i comandi, può essere uno stimolo importante.

Per tornare alla vista dei comandi "ad icona" facciamo clic sul pulsante

icone_proc.jpg

Abbiamo così imparato a costruire una procedura che utilizzeremo nel nodo successivo. Sarà sufficiente inserire nello zaino di una tartaruga la nuova icona che è comparsa nell'archivio dei comandi:

ins_proc.jpg

Salviamo il file di esercitazione.

Prossimo nodo Inizializzare l'azione



  
linkCreare un pulsante
linkFar parlare i personaggi
linkInizializzare l'azione
  
Approfondimenti:
  
Materiali: