Verwenden von Switch-Blöcken für den Übergang von Blöcken zur textbasierten Codierung in VEXcode EXP

Switch enthält bekannte Elemente der blockbasierten Programmierung und integriert Textfelder, in die Textbefehle eingegeben werden können.

Switch-Blöcke sind nur mitPythonkompatibel.


Switch bietet Schülern eine natürliche Brücke von Blöcken zur textbasierten Codierung. Wenn die Schüler mit der Logik und Abfolge der Befehle vertraut geworden sind, können sie beginnen, ein Projekt Block für Block zu konvertieren. 

Auf diese Weise können die Schüler weiterhin mit dem logischen Ablauf eines blockbasierten Programms arbeiten und dabei Dinge wie das Umschließen einer Schleife um andere Blöcke physisch sehen und gleichzeitig selbst mit Textbefehlen experimentieren. Sobald die Blöcke in Switch konvertiert sind, können die Schüler problemlos Parameter ändern und beginnen, die Syntax des Textbefehls zu verstehen. In diesem Abschnitt wird die Verwendung von Switch durch einen Schüler Schritt für Schritt erläutert und erklärt, wie Sie diese Blöcke in einem VEXcode-Projekt verwenden können.

Erste Schritte mit Switch-Blöcken

Um mit der Codierung mit Switch Blocks beginnen zu können, benötigen Sie:

  • Ein Computer (kein mobiles Gerät).

VEXcode IQ Code Viewer-Schnittstelle, die Python-Code anzeigt. Unten im Bild befinden sich zwei Schaltflächen: „Python“ (ausgewählt) und „C++ deaktiviert“. Dies weist darauf hin, dass C++ nicht verfügbar ist, wenn sich ein Switch-Block im Arbeitsbereich befindet.

Wenn ein Block in einen Switch-Block konvertiert wird, wird C++ im Code Viewer deaktiviert.

Konvertieren von Blöcken in Schalter

Konvertieren eines einzelnen Blocks in einen Switch

Klicken Sie mit der rechten Maustaste auf den Block, den Sie in einen Switch-Block umwandeln möchten.

Wählen Sie um den Block in den Switch-Blockumzuwandeln.

Der Block wird nun in einen Switch-Block mit denselben Parametern umgeschaltet.

rückgängig machen.png

Um einen Switch-Block nach der Konvertierung wieder in einen Block umzuwandeln, wählen Sie die SchaltflächeRückgängig.

Mehrere Blöcke in Switch umwandeln

Klicken Sie mit der rechten Maustaste auf die Oberseite des Stapels, den Sie in einen Switch-Block umwandeln möchten.

Wählen SieStapel in Switch-Blockkonvertieren.

Der Block, auf den Sie mit der rechten Maustaste geklickt haben, und alle Blöcke darunter werden in einen Schaltblock umgewandelt.

Konvertieren Sie Blöcke innerhalb eines Wrappers in Switch

Sie können einen Wrapper und seinen gesamten Inhalt mit einem Klick in Switch konvertieren.

Klicken Sie mit der rechten Maustaste auf den Wrapper, den Sie konvertieren möchten.

Wählen SieWrapper und Inhalt in Switch-Blockkonvertieren.

Der gesamte Inhalt des Wrappers wird in einen einzelnen Switch-Block konvertiert.

Verwenden Sie einen Schalterblock

Einen Schalterblock aus der Toolbox hinzufügen

Klicken Sie auf einen Schalterblock und ziehen Sie ihn aus der Toolbox.

Geben Sie einen Switch-Block ein

Wählen Sie das Textfeld des Switch-Blocks aus und geben Sie dann den gewünschten Befehl ein.

Kopieren und Einfügen von Text in einen Schalterblock

Klicken und ziehen Sie, um Text im Schalterblock hervorzuheben. Klicken Sie mit der rechten Maustaste und wählen Sie „Kopieren“. Klicken Sie als Nächstes in einen anderen Schalterblock. Klicken Sie abschließend mit der rechten Maustaste und wählen Sie „Einfügen“, um den Text zu übertragen.

Zusätzliche Schalterblöcke

Für Schalterblöcke gelten die gleichen Formkonventionen wie für andere Blöcke. Die Tabelle hier zeigt den Vergleich zwischen der Blockform, ihrer Bedeutung und den Switch-Blöcken des gleichen Typs.

Blockform Beschreibung Blockbeispiele Switch-Beispiele
Hutblöcke Beginnen Sie mit einem Stapel von Blöcken und formen Sie diese so, dass Sie die Blöcke darunter anbringen können. Ein „Mein Block“ mit der Bezeichnung „Drucknamen definieren“. Ein Switch-Block, der eine Python-Funktionsdefinition zeigt: „def print_name:“
Blöcke stapeln Führen Sie die wichtigsten Befehle aus. Sie sind so geformt, dass sie über oder unter anderen Stapelblöcken angebracht werden können. Blockbasiertes Codierelement, das „200 mm vorwärts fahren“ anzeigt, mit Dropdown-Menüs für Richtung und Einheit. Schalterblock, der den Funktionsaufruf „drivetrain.drive_for(FORWARD, 200, MM)“ enthält.
Boolesche Blöcke Gibt eine Bedingung als „wahr“ oder „falsch“ zurück und passt in alle Blöcke mit hexagonalen (sechsseitigen) Eingaben für andere Blöcke. Boolesches, blockbasiertes Codierungselement, das „LeftBumper gedrückt?“ mit einem Dropdown-Menü für „LeftBumper“ anzeigt. Schalterblock, der den Funktionsaufruf „left_bumper.pressed()“ enthält.
Reporterblöcke Gibt Werte in Form von Zahlen an und passt in alle Blöcke mit ovalen Eingaben für andere Blöcke. Reporterblockbasiertes Codierungselement, das „Timer in Sekunden“ anzeigt. Switch-Block, der den Funktionsaufruf „brain.timer_time(SEKUNDEN)“ enthält.
C-Blöcke Führen Sie eine Schleife mit den Blöcken darin aus oder prüfen Sie, ob eine Bedingung erfüllt oder falsch ist. Sie sind so geformt, dass Stapelblöcke über, unter oder in ihnen angebracht werden können. Ein Forever-Block ohne Blöcke darin. Ein If-Then-Else-Block ohne Blöcke darin. Switch-Block, der den Python-Code „while True:“ enthält. Switch-Block mit dem Python-Code „if left_bumper.pressed():“ und darunter „else:“.

 

1Weintrop, David und Uri Wilensky. „Wie blockbasierte, textbasierte und hybride Block-/Textmodalitäten die Programmierpraxis für Anfänger prägen.“  International Journal of Child-Computer Interaction 17 (2018): 83-92

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

Last Updated: