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

Switch bevat bekende elementen van blokgebaseerd programmeren en integreert tekstvakken waarin tekstcommando's kunnen worden ingevoerd. Bekijk de volgende video om een ​​voorbeeld te zien van hoe Python-code in een switch-blok wordt ingevoerd.

Let op: Switch Blocks zijn alleen compatibel metPython.


Switch biedt studenten een natuurlijke brug van Blocks naar tekstgebaseerde codering. Naarmate leerlingen vertrouwd raken met de logica en volgorde van opdrachten, kunnen ze een project blok voor blok omzetten. 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 beginnen te begrijpen. In dit gedeelte laten we zien hoe een student Switch gebruikt en hoe je deze blokken in een VEXcode-project kunt gebruiken.

Aan de slag met Switch Blocks

Om te beginnen met coderen met Switch Blocks, moet u over het volgende beschikken:

  • Een computer (geen mobiel apparaat).

Het menu van de VEXcode V5 Code Viewer met een Switch-blok weergegeven in het blokkenproject. De C++-optie is grijs weergegeven en gemarkeerd als uitgeschakeld. De Python-optie in de codeviewer is nog steeds ingeschakeld.

Wanneer een blok wordt geconverteerd naar een Switch-blok, wordt C++ in de Codeviewer uitgeschakeld.

Blokken omzetten naar schakelaars

Converteer een enkel blok naar een schakelaar

In de VEXcode V5-werkruimte, met het contextmenu geopend, kunt u een blok selecteren. Het menu bevat zes opties: Dupliceren, Blok uitschakelen, Blokken verwijderen, Blokhulp, Blok omzetten naar schakelblok en Blok lezen.

Klik met de rechtermuisknop op het blok dat u wilt converteren naar een Switch-blok.

In de VEXcode V5-werkruimte, met het contextmenu geopend, kunt u een blok selecteren. De optie 'Blok converteren naar schakelblok' is geselecteerd.

Selecteer Converteer blok naar schakel blok.

Het Drive for-blok is omgezet naar een Switch-blok en bevat nu Python-code die drivetrain.drive_for(FORWARD, 10, INCHES) leest.

Het blok wordt nu omgeschakeld naar een schakelblok met dezelfde parameters.

De VEXcode V5-werkbalk met het pictogram Ongedaan maken links van het pictogram Opnieuw uitvoeren gemarkeerd.

Om een Switch Block na conversie weer in een Block te veranderen, selecteert u de knopOngedaan maken.

Meerdere blokken omzetten naar switch

Als je met de muis over het bovenste blok van een stapel blokken rijdt, wordt het contextmenu geopend. Er is nu een extra optie in het contextmenu met de tekst 'Convert Stack to Switch Block', direct onder de optie 'Convert Block to Switch Block'.

Klik met de rechtermuisknop bovenaan de stapel die u wilt converteren naar een Switch Block.

Wanneer je een blok bestuurt dat zich bovenaan een stapel blokken bevindt, wordt het contextmenu geopend en is de optie 'Stapel converteren naar schakelblok' geselecteerd.

SelecteerConverteer stapel naar schakelblok.

De volledige stapel van drie blokken is omgezet in één Switch-blok, met één regel Python-code voor elk afzonderlijk blokcommando.

Het blok waarop u met de rechtermuisknop hebt geklikt en alle blokken daaronder worden omgezet in een schakelblok.

Converteer blokken in een wrapper naar een switch

Met één klik kunt u een Wrapper en alle bijbehorende inhoud naar Switch converteren.

Een herhalingsblok dat andere blokken bevat, heeft zijn contextmenu geopend. De opties voor 'Converteren naar schakelblok' zijn gewijzigd omdat dit een C-blok is. Er staat nu 'Wrapper converteren naar schakelblok' en 'Wrapper en inhoud converteren naar schakelblok'.

Klik met de rechtermuisknop op de wrapper die u wilt converteren.

Het herhalingsblok dat andere blokken bevat, heeft het contextmenu geopend en de optie 'Convert Wrapper and Contents to Switch Block' geselecteerd.

SelecteerConverteer wrapper en inhoud naar schakelblok.

De volledige stapel met een wrapperblok en geneste blokken is samengevoegd tot één Switch-blok. Voor elk blokcommando is er een bijbehorende regel Python-code.

Alle inhoud van de Wrapper wordt geconverteerd naar één Switch Block.

Gebruik een schakelaarblok

Voeg een schakelblok toe vanuit de gereedschapskist

Klik en sleep een schakelblok vanuit de gereedschapskist, zoals in deze video wordt getoond.

Typ een Switch Block

Selecteer het tekstveld van het schakelblok en voer vervolgens de gewenste opdracht in, zoals in deze video wordt getoond.

Tekst kopiëren en plakken in een schakelblok

Klik en sleep om tekst in het schakelblok te markeren. Klik met de rechtermuisknop en selecteer Kopiëren. Klik vervolgens in een ander Switch Block. Klik ten slotte met de rechtermuisknop en selecteer 'Plakken' om de tekst over te zetten, zoals in deze video wordt getoond.

Extra schakelblokken

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

Blokvorm Beschrijving Voorbeelden van blokken Schakelvoorbeelden
Hoed blokken Maak een stapel blokken en vorm deze zo dat je er blokken onder kunt bevestigen. Mijn blokkendefinitie hoedblok. Schakel het hoedblok in. De Python-code luidt: def print_name.
Stapel blokken Voer de belangrijkste opdrachten uit. Ze zijn zo gevormd dat ze boven of onder andere stapelblokken kunnen worden bevestigd. Aandrijfmechanisme voor stapelblok. Schakel het stackblok. De Python-code leest drivetrain.drive_for(FORWARD, 200, MM).
Booleaanse blokken Retourneert een voorwaarde als waar of onwaar en past binnen alle blokken met hexagonale (zeszijdige) invoer voor andere blokken. Drukken op bumper boolean blok. Schakel boolean-blok. De Python-code leest left_bumper.pressed().
Verslaggever blokkeert Rapporteer waarden in de vorm van getallen en pas ze aan in blokken met ovale invoer voor andere blokken. Timerwaarde-reporterblok. Schakel het reporterblok in. De Python-code leest brain.timer_time(SECONDS).
C-blokken Herhaal de blokken binnen de blokken of controleer of een voorwaarde waar of onwaar is. Ze zijn zo gevormd dat er boven, onder of in de blokken gestapeld kan worden. Voor altijd C-blok. Als dan anders C-blok. Schakelaar C-blok. De Python-code leest terwijl true. Uitbreidingsblok Switch C. De Python-code leest als left_bumper.pressed(), anders.

 

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

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

Last Updated: