VEXcode GOでスイッチブロックを使用してブロックベースのコーディングからテキストベースのコーディングに移行する

Switchは、ブロックベースのプログラミングでおなじみの要素を取り入れ、テキストコマンドを入力できるテキストボックスを統合しています。

注: Switch ブロックのみ互換性があります。


Switchは、学生がブロックベースのコーディングからテキストベースのコーディングへと自然に移行できる架け橋となる。生徒がコマンドの論理と順序に慣れてくると、プロジェクトを一度に1つのブロックずつ変換し始めることができるようになります。 

これにより、生徒はブロックベースのプログラムの論理フローを継続的に学習することができ、ループが他のブロックを囲む様子などを物理的に確認しながら、テキストコマンドを使った実験も開始できます。ブロックがSwitchに変換されると、生徒は簡単にパラメータを変更できるようになり、テキストコマンドの構文を理解し始めることができます。このセクションでは、生徒がSwitchを使用する例を通して、これらのブロックをVEXcodeプロジェクトで使用する方法を説明します。

ブロックをスイッチに変換する

注: Switch Blocks でコーディングを開始するには、コンピュータ (モバイル デバイスではありません) が必要です。

単一ブロックをスイッチに変換する

コンテキストメニューを開いた状態で、100mmブロック分前進します。重複ブロック、無効化ブロック、削除ブロック、ブロックヘルプ、ブロックをスイッチブロックに変換する機能、ブロックの読み取り機能が含まれています。

スイッチブロックに変換したいブロックを右クリックします。

コンテキストメニューを開いた状態で、100mmブロック分前進します。重複ブロック、無効化ブロック、削除ブロック、ブロックヘルプ、ブロックをスイッチブロックに変換する機能、およびブロックの読み取り機能が含まれています。「変換ブロックをスイッチブロックに変換する」がハイライト表示されています。

ブロックをスイッチブロックに変換を選択します。

ドライブトレイン。スイッチブロックで前方に100mmドライブ

このブロックは、同じパラメータを持つスイッチブロックに切り替えられます。

VEXcode GOのトップメニューで、元に戻すボタンがハイライト表示されています。

スイッチブロックを変換後にブロックに戻すには、Undo ボタンを選択します。

複数のブロックをスイッチに変換する

VEXcode GOでコンテキストメニューを開き、最初のブロックで100mm前進します。

スイッチブロックに変換したいスタックの一番上を右クリックします。

上記と同じ画像で、変換スタックをスイッチブロックに変換する部分を強調表示しています。

を選択してスタックをスイッチブロックに変換します。

VEXcode GO 開始時、drivetrain.drive_for 前進 100 mm、drivetrain.turn_for 右 90 度、console.print VEXcode を実行します。

右クリックしたブロックとその下にあるすべてのブロックがスイッチブロックに変換されます。

Cブロック内のブロックをスイッチに変換する

Cブロックとその内容すべてをワンクリックでSwitch形式に変換できます。

コンテキストメニューを開いたACブロック

変換したいCブロックを右クリックします。

上記と同じ画像で、Cブロックとその内容をSwitchブロックに変換する部分が強調表示されています。

を選択して、Cブロックとその内容をスイッチブロックに変換します。

VEXcode GO Python を起動すると、repeat_count が range(4) の範囲で、次の 3 行が実行されます。drivetrain.drive_for(FORWARD, 100, MM)、drivetrain.turn_for(RIGHT, 90)、そして wait(5, MSEC)

Cブロックの内容はすべて、単一のスイッチブロックに変換されます。

スイッチブロックを使用する

ツールボックスからスイッチブロックを追加する

ツールボックスからスイッチブロックをクリックしてドラッグします。

Switchブロックに入力する

スイッチブロックのテキストフィールドを選択し、目的のコマンドを入力してください。

Switchブロック内でテキストをコピー&ペーストする

スイッチブロック内のテキストをクリックしてドラッグすると、テキストをハイライト表示できます。右クリックして「コピー」を選択します。次に、別のスイッチブロック内をクリックします。最後に、右クリックして「貼り付け」を選択し、テキストを転送します。

追加スイッチブロック

スイッチブロックは、他のブロックと同じ形状規則に従います。この表は、ブロックの形状、その意味、および同じタイプのスイッチブロックの比較を示しています。

ブロック形状 説明 ブロックの例 スイッチの例
帽子の形 ブロックを積み重ねて、その下にブロックを接続できるように形を整えます。 印刷名ブロックを定義します。 ハットスイッチブロック内の def print_name()
スタックブロック 主要なコマンドを実行します。これらは、他の積み重ねブロックの上または下に取り付けられるように形状が工夫されている。 100mmブロックを前進させる switch ブロック内の drivetrain.drive_for(FORWARD, 100, MM)。
ブールブロック 条件を真または偽として返し、他のブロックの入力が六角形(6辺)である任意のブロック内に収まります。 バンパープレスブロック Switchブロック内のbumper.is_pressed()
レポーターブロック 数値形式で報告された値は、他のブロックの楕円形の入力フィールドを持つブロック内に収まるようにしてください。 タイマー(秒単位) switchブロック内のtimer.time(SECONDS)
Cブロック それらのブロック内でループ処理を行うか、条件が真か偽かをチェックします。それらは、積み重ねブロックをその上、下、または内部に取り付けることができるように形状が工夫されている。 永久ブロックとif elseブロック  C字型ブロック内のTrueブロック。バンパーが押されている場合、それ以外の場合は、E字型のブロック内

 

1ワイントロップ、デヴィッド、ウリ・ウィレンスキー。「ブロックベース、テキストベース、およびブロック/テキストハイブリッドのモダリティが、初心者のプログラミング実践にどのような影響を与えるか。」  国際児童コンピュータインタラクションジャーナル 17 (2018): 83-92

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

Last Updated: