Switch Blocks gebruiken om over te stappen van blokken naar tekstgebaseerde codering in VEXcode VR

Om toegang te krijgen tot Switch Blocks in VEXcode VR, hebt u een VEXcode VR Premium-licentie nodig. Zie dit artikel voor meer informatie over hoe u toegang krijgt tot schakelblokken in VEXcode VR.

Terwijl beginnende programmeurs vaker de op blokken gebaseerde interface gebruiken, zijn gevorderde studenten wellicht geïnteresseerd in het coderen van hun robot met behulp van een tekstgebaseerde programmeertaal, zoals Python. Historisch gezien kan deze overgang van blokken naar tekstgebaseerd programmeren voor studenten aanvoelen als het leren van een geheel nieuwe taal, waarbij ze de logica die ze eerder met behulp van blokken hebben geleerd, niet kunnen toepassen.1 Switch Blocks in VEXcode VR zijn ontwikkeld om de overgang van blokgebaseerd naar tekstgebaseerd programmeren te vergemakkelijken. In dit artikel leggen we uit hoe u Switch Blocks in VEXcode VR kunt gebruiken. Aan de hand van een klassikaal scenario leggen we de functies uit en illustreren we ze in context.

Schakelblok dat de equivalente blokgebaseerde en tekstgebaseerde code in VEXcode VR weergeeft.

Switch Blocks gebruiken

Switch bevat bekende elementen van blokgebaseerd programmeren en integreert tekstvakken waarin tekstopdrachten kunnen worden getypt. Hierdoor kunnen de studenten langzaam overgaan naar de tekst, terwijl ze de opdrachten en de syntaxis van Python leren. Bekijk de volgende video om een ​​voorbeeld te zien van hoe Python-code in een switch-blok wordt ingevoerd.


Switch biedt studenten een natuurlijke brug van Blocks naar tekstgebaseerd coderen. Naarmate leerlingen vertrouwd raken met de logica en de volgorde van opdrachten, kunnen ze een project blok voor blok converteren. In deze video wordt getoond hoe je een blok omzet in een Switch-blok.

Hierdoor kunnen leerlingen blijven werken met de logische stroom van een op blokken gebaseerd programma, waarbij ze fysiek dingen kunnen zien zoals de wikkeling van een lus rond andere blokken, terwijl ze ook zelf beginnen te experimenteren met tekstopdrachten. Zodra de blokken zijn omgezet naar Switch, kunnen studenten eenvoudig parameters wijzigen en de syntaxis van de tekstopdracht begrijpen. In dit gedeelte laten we zien hoe een student Switch gebruikt en hoe je deze blokken kunt gebruiken in een VEXcode VR-project.

Switch is verkrijgbaar met een VEXcode VR Premium-licentie. Meer informatie over VEXcode VR-abonnementen vindt u hier.

Zodra u uw licentie hebt, leert hoe u toegang krijgt tot Switch met behulp van de informatie inartikel.

Schakelaar in de klas

Austin is een student die al enkele jaren met blokken codeert. Hoewel sommige studenten in de klas nog nieuwe programmeurs zijn, wil Austin meer leren over Python en hoe hij de VR-robot kan coderen met behulp van tekst. Mevrouw Hunter, de docent informatica, merkte dat Austin toe was aan een extra uitdaging en introduceerde Switch om Austins leerproces te ondersteunen en tekstgebaseerde codering te introduceren. Mevrouw Hunter demonstreerde enkele basisbeginselen, zoals het converteren van een blok en het openen van de Help om meer te leren over de opdracht Switch Python voor elk van de blokken. 

Vandaag heeft mevrouw Hunter activiteit opruimen, aan de klas toegewezen. Ze gebruikt VEXcode VR voor haar programmeerlessen omdat ze weet dat ze hiermee haar lessen kan differentiëren en leerlingen met verschillende programmeerniveaus kan bereiken met dezelfde activiteiten. De schakelmodus helpt om dit onderscheid te vergemakkelijken voor studenten zoals Austin. Bij de activiteit 'Korrel opruimen' is het de bedoeling om zoveel mogelijk afval te verzamelen voordat de batterij van de VR-robot leeg is. Austin begrijpt de uitdaging en weet hoe hij basisalgoritmes moet programmeren. Daarom maakt hij een VEXcode VR-project dat de Down Eye Sensor gebruikt om de rand van de speeltuin te detecteren en achteruit te rijden om schade aan het koraal te voorkomen.

VEXcode VR-werkruimte met blokgebaseerde commando's voor het programmeren van de virtuele robot.

Een enkel blok omzetten naar een schakelaar

Converteer 1 blok


Nu Austin een project heeft getest en geverifieerd dat het werkt, is de volgende stap het converteren van een blok naar Switch om Python te kunnen gaan verkennen. 


 

Blokken kunnen worden omgezet naar Switch door lang op het blok te drukken of er met de rechtermuisknop op te klikken en vervolgens de optie 'Omzetten naar Switch-blok' te selecteren, zoals in de video hier wordt getoond.

Austin kan nu zien dat het [Drive for]-blok is veranderd in de Python-opdracht drive_for. Na de conversie voert Austin het project uit om te controleren of het nog steeds werkt zoals bedoeld. Na de conversie wil Austin meer leren over het commando drive_for. Door de Help van het [Drive for]-blok te openen, kan Austin verbindingen maken tussen de parameters van het blok en de Python-opdracht.

De Help gebruiken om meer te leren over Switch Python-opdrachten

Open Help


Om de informatie over de Switch Python Command in de Help te bekijken, opent Austin het Help-venster en selecteert hij het blok [Drive for]. Vervolgens scrolt hij naar beneden, zoals getoond in de video hier. 

Mevrouw Hunter checkte in en zag dat Austin meer te weten kwam over het [Drive for]-blok. Ze daagde hem uit om toe te passen wat hij had geleerd door een blok te converteren en te typen in een nieuw blok. Ze liet zien hoe je een Switch-blok sleept en liet Austin proberen een turn_for -commando in het blok te typen. Austin opent de Help voor het blok en maakt een aantekening over de structuur van het commando. 

Typen in een Switch Block

Voeg een blok toe


Austin kent de Python-opdracht uit de Help en wil rechtstreeks in een Switch-blok typen. Austin sleept een [Switch Stack]-blok uit de Toolbox en plaatst het boven het [Turn for]-blok, zoals in deze video te zien is. 

Typ in het blok


Vervolgens gebruikt Austin de cursor om het Switch-blok te selecteren en begint hij met het typen van de Python-opdracht turn_for zoals hier weergegeven. 


 

Nadat je de nieuwe opdracht hebt ingevoerd en ervoor hebt gezorgd dat de parameters overeenkomen met het oorspronkelijke blok, kan het [Turn for]-blok worden verwijderd, zoals in deze video wordt getoond. 

Mevrouw Hunter komt langs om Austins voortgang te controleren. Ze ziet het Switch-project en vraagt of ze het mag uitvoeren om te controleren of de opdrachten correct zijn getypt. Nadat ze heeft gecontroleerd of het project werkt, demonstreert ze nog een andere functie: blokken met meerdere regels.

Kopiëren en plakken


Het [Switch Stack]-blok kan meerdere regels code bevatten. Austin kopieert de tekst turn_for en plakt deze in het bovenstaande blok, zoals in de video te zien is.

 

Austin ziet dat door op 'Enter' of 'Return' op het toetsenbord te drukken, extra regels aan het blok kunnen worden toegevoegd en hij gaat door met het toevoegen van Python-opdrachten.

Austin voelt zich een expert in Drivetrain-opdrachten in Python, dus print hij een certificaat uit en slaat het project op voor de volgende keer.

Stacks converteren naar Switch

Later in het schooljaar herhaalt mevrouw Hunter de activiteit 'Korrel opruimen' en daagt ze leerlingen uit om óf een hogere score te halen óf tekstgebaseerde codering te gebruiken. Hoewel Austin Drivetrain-opdrachten in Switch-blokken heeft gebruikt, is deze activiteit een kans om meer te leren over het equivalent van 'C'-blokken en Booleans in Python. 

Wrapper converteren


Austin drukt lang op het [If then else]-blok of klikt er met de rechtermuisknop op en selecteert 'Converteer wrapper en inhoud naar Switch-blok.' Dit zet de lus en de inhoud van de lus om in één enkel Switch-blok, zoals in deze video te zien is.


 

Let op de inspringing nadat de conversie is voltooid. Meerdere opdrachten in één Switch-blok moeten de juiste inspringing hebben om te werken zoals bedoeld.

Extra schakelblokken

Hoewel Austin uitsluitend het [Switch Stack]-blok gebruikt, zijn er aanvullende Switch-blokken beschikbaar. Austin is klaar om een verbeterd Coral Reef Cleanup-project in te leveren, maar maakt een plan met mevrouw Hunter om in de volgende les een nieuw soort Switch-blok uit te proberen, zoals hieronder vermeld.

Switch-blokken volgen dezelfde vormconventies als andere blokken. De tabel hier toont de vergelijking tussen de blokvorm, de betekenis ervan en de Switch-blokken van hetzelfde type.

Blokvorm Beschrijving Blokvoorbeelden Schakelvoorbeelden
Hoedenblokken Maak een stapel blokken en zorg dat je er blokken onder kunt bevestigen. VEXcode VR-werkruimte met een schakelblok dat het equivalente blok en Python-opdrachten toont voor een aandrijflijndraai in de speelomgeving. Voorbeelden van hoed-, stapel-, Booleaanse en reporterblokvormen die worden gebruikt met schakelblokken in VEXcode VR.
Stapelblokken Voer de belangrijkste opdrachten uit. Ze zijn zo gevormd dat ze boven of onder andere stapelblokken kunnen worden bevestigd. Voorbeelden van schakelblokken voor de bloktypen hat, stack, boolean en reporter in VEXcode VR. Voorbeelden van hat-, stack-, Boolean- en reporter-blokken met de bijbehorende switch-blokken in VEXcode VR.
Booleaanse blokken Retourneert een voorwaarde als waar of onwaar en past binnen alle blokken met hexagonale (zeszijdige) invoer voor andere blokken. VEXcode VR-werkruimte met de blokken-werkbalk en codegebied voor het maken van een project met blokken. Voorbeelden van hat-, stack-, Boolean- en reporter-blokken met hun switch-blok-equivalenten in VEXcode VR.
Verslaggever blokkeert Rapporteer waarden in de vorm van getallen en pas ze aan in blokken met ovale invoer voor andere blokken. Voorbeelden van schakelblokken die blokgebaseerde en tekstgebaseerde code combineren in VEXcode VR VEXcode VR-blokkenpalet met de categorieën hoed, stapel, Booleaans en rapporteerblokken die worden gebruikt in schakelblokken.
C-blokken Herhaal de blokken binnen de blokken of controleer of een voorwaarde waar of onwaar is. Ze zijn zo gevormd dat je er boven, onder of in blokken op kunt stapelen. Voorbeelden van VEXcode VR-vormen voor hoed-, stapel-, boolean- en reporterblokken, met bijbehorende schakelblokvormen. Voorbeelden van schakelblokken voor hat-, stack-, Boolean- en reporterblokken in VEXcode VR Voorbeelden van schakelblokken die blokvormen weergeven, vertaald naar tekstgebaseerde code. VEXcode VR-project dat schakelblokken demonstreert waarmee blokgebaseerd en tekstgebaseerd programmeren in de werkruimte gecombineerd kan worden.

Alles bij elkaar voegen

Terwijl mevrouw Hunter toekeek hoe Austin verschillende Python-opdrachten in Switch-blokken typte, zag ze hoe Switch haar studenten hielp hun eigen leerproces te ondersteunen. Haar studenten hadden allemaal verschillende programmeerervaringen voordat ze aan haar lessen begonnen, en dankzij de uitdagingen in VEXcode VR kunnen ze op hun eigen niveau programmeren. Sommige studenten coderen uitsluitend in Blocks, anderen in Python en weer anderen, zoals Austin, gebruiken Switch om over te stappen op Python-coderen. In de daaropvolgende maanden ging Austin uitsluitend in Python coderen, waarbij hij de kennis die hij had opgedaan met Switch toepaste om de overgang van blokken naar tekst veel eenvoudiger en soepeler te laten verlopen. 

Met Switch Blocks in VEXcode VR kunnen docenten, zoals mevrouw Hunter, als leerbegeleiders optreden terwijl leerlingen van verschillende programmeerniveaus dezelfde uitdaging voltooien. Tegelijkertijd voelen de studenten, net als Austin, zich gesterkt om nieuwe methoden voor het oplossen van codeeropdrachten uit te proberen terwijl ze de overgang maken van blokken naar tekst met behulp van Switch Blocks in VEXcode VR.


1Weintrop, David en Uri Wilensky. "Hoe blokgebaseerde, tekstgebaseerde en hybride blok/tekstmodaliteiten de programmeerpraktijk van beginners beïnvloeden."  Internationaal tijdschrift voor kind-computerinteractie 17 (2018): 83-92

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

Last Updated: