Utilisation de blocs de commutation pour passer du codage par blocs au codage textuel

Switch intègre des éléments familiers de la programmation par blocs et intègre des zones de texte dans lesquelles des commandes de texte peuvent être saisies.

Les blocs de commutation ne sont compatibles qu'avec Python.


Switch offre aux étudiants un pont naturel entre les blocs et le codage textuel. À mesure que les élèves se familiarisent avec la logique et le séquençage des commandes, ils peuvent commencer à convertir un projet un bloc à la fois. 

Cela permet aux étudiants de continuer à travailler avec le flux logique d'un programme basé sur des blocs où ils peuvent voir physiquement des choses comme l'enroulement d'une boucle autour d'autres blocs tout en commençant à expérimenter eux-mêmes les commandes de texte. Une fois les blocs convertis en Switch, les élèves peuvent facilement modifier les paramètres et commencer à comprendre la syntaxe de la commande texte. Cette section vous guidera à travers l'utilisation de Switch par un étudiant pour expliquer comment vous pouvez utiliser ces blocs dans un projet VEXcode.

Premiers pas avec les blocs de commutation

Pour commencer à coder avec Switch Blocks, vous devez avoir :

  • Un ordinateur (pas un appareil mobile).

Interface du visualiseur de code VEXcode IQ affichant le code Python. En bas de l'image, il y a deux boutons : « Python » (sélectionné) et « C++ désactivé », soulignant que C++ n'est pas disponible lorsqu'un bloc de commutation se trouve dans l'espace de travail.

Lorsqu'un bloc est converti en bloc de commutation, C++ dans la visionneuse de code sera désactivé.

Conversion de blocs en commutateurs

Convertir un seul bloc en commutateur

Faites un clic droit sur le bloc que vous souhaitez convertir en bloc de commutation.

Sélectionnez Convertir le bloc en bloc de commutation.

Le bloc sera désormais commuté vers un bloc de commutation avec les mêmes paramètres.

annuler.png

Pour transformer un bloc de commutation en bloc après la conversion, sélectionnez le boutonAnnuler.

Convertir plusieurs blocs en commutateur

Cliquez avec le bouton droit sur le haut de la pile que vous souhaitez convertir en bloc de commutation.

SélectionnezConvertir la pile en bloc de commutation.

Le bloc sur lequel vous avez cliqué avec le bouton droit de la souris et tous les blocs situés en dessous seront convertis en bloc de commutation.

Convertir les blocs à l'intérieur d'un wrapper en commutateur

Vous pouvez convertir un Wrapper et tout son contenu en Switch en un seul clic.

Cliquez avec le bouton droit sur le Wrapper que vous souhaitez convertir.

SélectionnezConvertir le wrapper et le contenu en bloc de commutation.

Tout le contenu du Wrapper sera converti en un seul bloc de commutation.

Utiliser un bloc de commutation

Ajouter un bloc de commutation à partir de la boîte à outils

Cliquez et faites glisser un bloc de commutation depuis la boîte à outils.

Saisissez un bloc de commutation

Sélectionnez le champ de texte du bloc de commutation, puis entrez la commande souhaitée.

Copier et coller du texte à l'intérieur d'un bloc de commutation

Cliquez et faites glisser pour mettre en surbrillance le texte dans le bloc de commutation. Faites un clic droit et sélectionnez Copier. Ensuite, cliquez à l’intérieur d’un autre bloc de commutation. Enfin, faites un clic droit et sélectionnez Coller pour transférer le texte.

Blocs de commutation supplémentaires

Les blocs de commutation suivent les mêmes conventions de forme que les autres blocs. Le tableau ici montre la comparaison entre la forme du bloc, sa signification et les blocs Switch du même type.

Forme de bloc Description Exemples de blocs Exemples de commutation
Blocs de chapeau Commencez une pile de blocs et façonnez-les pour attacher des blocs en dessous. Un bloc intitulé « Définir le nom d'impression ». Un bloc de commutation montrant une définition de fonction Python : « def print_name : »
Empiler des blocs Exécuter les commandes principales. Ils sont conçus pour être fixés au-dessus ou au-dessous d'autres blocs de pile. Élément de codage basé sur des blocs indiquant « avancer de 200 mm » avec des menus déroulants pour la direction et l'unité. Bloc de commutation contenant l'appel de fonction 'drivetrain.drive_for(FORWARD, 200, MM)'.
Blocs booléens Renvoie une condition comme vraie ou fausse et s'adapte à tous les blocs avec des entrées hexagonales (à six côtés) pour d'autres blocs. Élément de codage basé sur un bloc booléen affichant « LeftBumper appuyé ? » avec un menu déroulant pour « LeftBumper ». Bloc de commutation contenant l'appel de fonction 'left_bumper.pressed()'.
Blocs de reporters Indiquez les valeurs sous forme de nombres et ajustez-les à l'intérieur de tous les blocs avec des entrées ovales pour les autres blocs. Élément de codage basé sur un bloc de reporter affichant « minuterie en secondes ». Bloc de commutation contenant l'appel de fonction 'brain.timer_time(SECONDS)'.
Blocs C Faites une boucle sur le(s) bloc(s) qu'ils contiennent ou vérifiez si une condition est vraie ou fausse. Ils sont conçus pour fixer des blocs de pile au-dessus, en dessous ou à l'intérieur d'eux. Un bloc éternel sans aucun bloc à l'intérieur. Un bloc If then else sans aucun bloc à l'intérieur. Bloc de commutation contenant le code python `while True:`. Bloc de commutation contenant le code python `if left_bumper.pressed():` et en dessous, `else:`.

 

1Weintrop, David et Uri Wilensky. « Comment les modalités basées sur les blocs, basées sur le texte et les modalités hybrides bloc/texte façonnent les pratiques de programmation des novices. »  Revue internationale d'interaction enfant-ordinateur 17 (2018) : 83-92

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

Last Updated: