Utilizzo di blocchi Switch per la transizione dai blocchi alla codifica basata su testo in VEXcode VR

Per accedere ai blocchi Switch in VEXcode VR, è necessario disporre di una licenza VEXcode VR Premium. Consulta questo articolo per ulteriori informazioni su come accedere ai blocchi Switch in VEXcode VR.

Mentre i programmatori principianti sono più propensi a utilizzare l'interfaccia basata su blocchi, gli studenti più avanzati potrebbero essere interessati a programmare il loro robot utilizzando un linguaggio di programmazione basato su testo, come Python. Storicamente, questa transizione dalla programmazione a blocchi a quella basata sul testo può sembrare agli studenti come l'apprendimento di un linguaggio completamente nuovo, in cui non possono applicare la logica appresa in precedenza utilizzando i.1 Switch Blocks in VEXcode VR è stato sviluppato per facilitare la transizione dalla programmazione basata su blocchi a quella basata su testo. Questo articolo spiegherà come utilizzare i blocchi Switch in VEXcode VR e ti guiderà attraverso uno scenario in classe per spiegare e illustrare tali funzionalità nel contesto.

Blocco Switch che mostra il codice equivalente basato su blocchi e basato su testo in VEXcode VR

Utilizzo dei blocchi di commutazione

Switch incorpora elementi familiari della programmazione basata su blocchi e integra caselle di testo in cui è possibile digitare comandi di testo. Ciò consente agli studenti di passare gradualmente al testo man mano che apprendono i comandi e la sintassi tipici di Python. Guarda il seguente video per vedere un esempio di codice Python inserito in un blocco Switch.


Switch fornisce agli studenti un ponte naturale tra Blocks e la codifica basata sul testo. Man mano che gli studenti acquisiscono familiarità con la logica e la sequenza dei comandi, possono iniziare a convertire un progetto un blocco alla volta. In questo video viene mostrato il processo di conversione di un blocco in un blocco Switch.

Ciò consente agli studenti di continuare a lavorare con il flusso logico di un programma basato su blocchi, dove possono vedere fisicamente cose come l'avvolgimento di un ciclo attorno ad altri blocchi, iniziando allo stesso tempo a sperimentare autonomamente con i comandi di testo. Una volta convertiti i blocchi in Switch, gli studenti possono facilmente modificare i parametri e iniziare a comprendere la sintassi del comando di testo. Questa sezione ti guiderà attraverso l'uso di Switch da parte di uno studente per spiegare come puoi usare questi blocchi in un progetto VR VEXcode.

Switch è disponibile con una licenza VEXcode VR Premium. Scopri di più sugli abbonamenti VEXcode VR qui.

Una volta ottenuta la licenza, scopri come accedere a Switch utilizzando le informazioni contenute in questo articolo.

Cambiare in classe

Austin è uno studente che programma con i blocchi da diversi anni. Sebbene alcuni studenti della classe siano ancora alle prime armi con la programmazione, Austin vuole saperne di più su Python e su come passare alla programmazione del robot VR utilizzando il testo. La signora Hunter, l'insegnante di informatica, notò che Austin era pronto per una sfida aggiuntiva e introdusse Switch per aiutarlo a strutturare l'apprendimento e a introdurre la codifica basata sul testo. La Sig.ra Hunter ha illustrato alcune nozioni di base, come la conversione di un blocco e l'apertura della Guida per saperne di più sul comando Switch Python per ciascuno dei blocchi. 

Oggi la signora Hunter ha assegnato alla classe l'attività pulizia della barriera corallina. Utilizza VEXcode VR per i suoi corsi di programmazione perché sa che può differenziare l'insegnamento e raggiungere studenti con diversi livelli di programmazione con le stesse attività. La modalità Switch aiuta a facilitare questa differenziazione per studenti come Austin. Nell'attività di pulizia della barriera corallina, l'obiettivo è raccogliere quanti più rifiuti possibile prima che la batteria del robot VR si scarichi. Avendo compreso la sfida e come codificare gli algoritmi di base, Austin crea un progetto VEXcode VR che utilizza il sensore Down Eye per rilevare il bordo del Playground e guidare in retromarcia per evitare di danneggiare il corallo.

Spazio di lavoro VEXcode VR con comandi a blocchi per la programmazione del robot virtuale

Conversione di un singolo blocco in uno switch

Converti 1 blocco


Ora che Austin ha testato un progetto e ne ha verificato il funzionamento, il passo successivo è convertire un blocco in Switch per iniziare a esplorare Python. 


 

I blocchi possono essere convertiti in Switch tenendo premuto a lungo o cliccando con il tasto destro sul blocco, quindi selezionando l'opzione "Converti in blocco Switch", come mostrato nel video qui.

Austin ora può vedere che il blocco [Drive for] si è trasformato nel comando Python drive_for. Dopo la conversione, Austin esegue il progetto per assicurarsi che funzioni ancora come previsto. Dopo la conversione, Austin vuole saperne di più sul comando drive_for. Aprendo la Guida del blocco [Drive for], Austin può creare collegamenti tra i parametri del blocco e il comando Python.

Utilizzo della Guida per saperne di più sui comandi Switch Python

Apri Aiuto


Per visualizzare le informazioni sul comando Switch Python nella Guida, Austin apre la finestra della Guida e seleziona il blocco [Drive for], quindi scorre fino in fondo come mostrato nel video qui. 

La signora Hunter si è registrata e ha potuto vedere che Austin stava imparando di più sul blocco [Drive for]. Lo sfidò ad applicare quanto appreso convertendo un blocco e digitandolo in un nuovo blocco. Ha mostrato come trascinare un blocco Switch e ha chiesto ad Austin di provare a digitare il comando turn_for all'interno del blocco. Austin apre la Guida per il blocco e prende nota della struttura del comando. 

Digitazione in un blocco di commutazione

Aggiungi un blocco


Conoscendo il comando Python consultando la Guida, Austin vuole digitarlo direttamente in un blocco Switch. Trascinando un blocco [Switch Stack] dalla Casella degli strumenti, Austin lo aggiunge sopra il blocco [Turn for] come mostrato in questo video. 

Digita nel blocco


Quindi Austin usa il cursore per selezionare il blocco Switch e inizia a digitare il comando Python turn_for come mostrato qui. 


 

Dopo aver digitato il nuovo comando e aver verificato che i parametri corrispondano al blocco originale, il blocco [Turn for] può essere eliminato come mostrato in questo video. 

La signora Hunter viene a controllare i progressi di Austin. Vede il progetto Switch e chiede di vederlo in esecuzione per assicurarsi che i comandi siano digitati correttamente. Dopo aver verificato il funzionamento del progetto, illustra un'altra funzionalità: i blocchi multi-linea.

Copia e incolla


Il blocco [Switch Stack] può contenere più righe di codice digitate al suo interno. Austin copia il testo turn_for e lo incolla nel blocco sopra, come mostrato nel video qui.

 

Austin nota che premendo "Invio" o "Return" sulla tastiera è possibile aggiungere altre righe al blocco e continua ad aggiungere comandi Python.

Sentendosi un maestro dei comandi Drivetrain in Python, Austin stampa un certificato e salva il progetto per la prossima volta.

Conversione di stack in switch

Più avanti nell'anno scolastico, la signora Hunter riprende l'attività di pulizia della barriera corallina e sfida gli studenti a ottenere un punteggio più alto o a utilizzare la codifica basata sul testo. Sebbene Austin abbia utilizzato i comandi Drivetrain nei blocchi Switch, questa attività rappresenta un'opportunità per approfondire l'equivalente dei blocchi 'C' e dei valori booleani in Python. 

Converti wrapper


Austin preme a lungo o fa clic con il pulsante destro del mouse sul blocco [If then else] e seleziona "Converti wrapper e contenuto in Switch Block". Questo converte il ciclo e il suo contenuto in un singolo blocco Switch, come mostrato in questo video.


 

Notare la rientranza una volta completata la conversione. Per funzionare come previsto, più comandi in un blocco Switch devono avere la corretta indentazione.

Blocchi di commutazione aggiuntivi

Sebbene Austin abbia utilizzato esclusivamente il blocco [Switch Stack], sono disponibili altri blocchi Switch. Austin è pronto a consegnare un progetto migliorato di pulizia della barriera corallina, ma concorda con la signora Hunter di provare un nuovo tipo di blocco Switch come quelli elencati di seguito nella prossima lezione.

I blocchi di commutazione seguono le stesse convenzioni di forma degli altri blocchi. La tabella qui mostra il confronto tra la forma del blocco, il suo significato e i blocchi Switch dello stesso tipo.

Forma a blocco Descrizione Esempi di blocchi Esempi di switch
Blocchi per cappelli Iniziare con una pila di blocchi e modellarli in modo da poter attaccare i blocchi sottostanti. Area di lavoro VEXcode VR con un blocco interruttore che mostra il blocco equivalente e i comandi Python per una svolta della trasmissione nel playground Esempi di forme di blocchi hat, stack, booleani e reporter utilizzati con i blocchi switch in VEXcode VR
Impilare i blocchi Esegue i comandi principali. Sono sagomati in modo da poter essere fissati sopra o sotto altri blocchi impilati. Esempi di blocchi switch per i tipi di blocco hat, stack, boolean e reporter in VEXcode VR Esempi di blocchi hat, stack, booleani e reporter con i relativi blocchi switch in VEXcode VR
Blocchi booleani Restituisce una condizione come vera o falsa e si adatta a tutti i blocchi con input esagonali (a sei lati) per altri blocchi. Area di lavoro VEXcode VR con barra degli strumenti Blocchi e area di programmazione per la creazione di un progetto con blocchi Esempi di blocchi hat, stack, booleani e reporter con i loro equivalenti blocchi switch in VEXcode VR
Blocchi del reporter Segnala i valori sotto forma di numeri e adattali a qualsiasi blocco con input ovali per altri blocchi. Esempi di blocchi switch che combinano codice a blocchi e codice testuale in VEXcode VR Tavolozza di blocchi VEXcode VR con categorie di blocchi hat, stack, booleani e reporter utilizzate nei blocchi switch
blocchi C Esegui un ciclo sui blocchi al loro interno o controlla se una condizione è vera o falsa. Sono sagomati in modo da poter fissare i blocchi impilati sopra, sotto o al loro interno. Esempi di forme di blocchi VEXcode VR hat, stack, boolean e reporter con le corrispondenti forme di blocchi switch Esempi di blocchi switch per i blocchi hat, stack, booleani e reporter in VEXcode VR Esempi di blocchi di interruttori che mostrano le forme dei blocchi tradotte in codice testuale Progetto VEXcode VR che mostra i blocchi di commutazione utilizzati per combinare la programmazione a blocchi e quella testuale nell'area di lavoro.

Mettere tutto insieme

Mentre la signora Hunter osservava Austin provare a digitare diversi comandi Python nei blocchi Switch, poteva vedere come Switch consentisse ai suoi studenti di strutturare il proprio apprendimento. Tutti i suoi studenti avevano esperienze di programmazione diverse prima di iniziare il suo corso e le sfide di VEXcode VR consentono loro di programmare al proprio livello. Alcuni studenti programmano esclusivamente in Blocks, altri in Python, mentre altri ancora, come Austin, usano Switch per passare alla programmazione in Python. Nei mesi successivi, Austin passò a programmare esclusivamente in Python, applicando quanto appreso utilizzando Switch per rendere la transizione dai blocchi al testo molto più semplice e fluida. 

Gli Switch Blocks in VEXcode VR consentono agli insegnanti, come la Sig.ra Hunter, di facilitare l'apprendimento mentre gli studenti di tutti i diversi livelli di programmazione completano la stessa sfida. Nel frattempo gli studenti, come Austin, si sentono incoraggiati a provare nuovi metodi per risolvere le attività di codifica mentre passano dai blocchi al testo utilizzando Switch Blocks in VEXcode VR.


1Weintrop, David e Uri Wilensky. "In che modo le modalità basate su blocchi, basate su testo e ibride blocco/testo influenzano le pratiche di programmazione dei principianti."  Rivista internazionale di interazione bambino-computer 17 (2018): 83-92

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: