Uso del conmutador VEXcode VR para la transición de bloques a codificación basada en texto

Si bien los programadores principiantes están más inclinados a utilizar la interfaz basada en bloques, los estudiantes más avanzados pueden estar interesados ​​en codificar su robot utilizando un lenguaje de programación basado en texto, como Python. Históricamente, los estudiantes pueden sentir esta transición de bloques a programación basada en texto como aprender un lenguaje completamente nuevo, donde no pueden aplicar la lógica que habían aprendido previamente usando bloques.1 VEXcode VR Switch fue desarrollado para facilitar la transición de la programación basada en bloques a la programación basada en texto. Este artículo cubrirá cómo usar VEXcode VR Switch y lo guiará a través de un escenario de aula para explicar e ilustrar esas características en contexto.

Captura de pantalla 2023-08-01 a las 13.20.50.png

Usando bloques de interruptores

Switch incorpora elementos familiares de programación basada en bloques e integra cuadros de texto donde se pueden escribir comandos de texto. Esto permite a los estudiantes realizar una transición lenta al texto a medida que aprenden los comandos y la sintaxis que acompañan a Python.


Switch proporciona a los estudiantes un puente natural desde los bloques hacia la codificación basada en texto. A medida que los estudiantes se familiaricen con la lógica y la secuencia de comandos, podrán comenzar a convertir un proyecto bloque a bloque. 

Esto permite a los estudiantes continuar trabajando con el flujo lógico de un programa basado en bloques donde pueden ver físicamente cosas como el envoltorio de un bucle alrededor de otros bloques y al mismo tiempo comenzar a experimentar con comandos de texto. Una vez que los bloques se convierten a Switch, los estudiantes pueden cambiar fácilmente los parámetros y comenzar a comprender la sintaxis del comando de texto. Esta sección lo guiará a través del uso de Switch por parte de un estudiante para explicarle cómo puede usar estos bloques en un proyecto VEXcode VR.

Switch está disponible con una licencia VEXcode VR Premium. Obtenga más información sobre las suscripciones a VEXcode VR aquí.

Una vez que tenga su licencia, cómo acceder a Switch usando la información de este artículo.

Cambiar en el aula

Austin es un estudiante que lleva varios años codificando con bloques. Si bien algunos estudiantes de la clase todavía son programadores nuevos, Austin quiere aprender más sobre Python y cómo pasar a codificar el robot de realidad virtual usando texto. La Sra. Hunter, profesora de Ciencias de la Computación, notó que Austin estaba listo para un desafío adicional e introdujo Switch para ayudar a impulsar el aprendizaje de Austin e introducir la codificación basada en texto. La Sra. Hunter demostró algunos de los conceptos básicos, como convertir un bloque y abrir la Ayuda para obtener más información sobre el comando Switch Python para cada uno de los bloques. 

Hoy la Sra. Hunter asignó Limpieza de arrecifes de coral a la clase. Utiliza VEXcode VR para sus clases de codificación porque sabe que puede diferenciar su instrucción y llegar a estudiantes de distintos niveles de codificación con las mismas actividades. El modo Switch ayuda a facilitar esa diferenciación para estudiantes como Austin. En la actividad de limpieza de arrecifes de coral, el objetivo es recolectar la mayor cantidad de basura posible antes de que se agote la batería del robot VR. Al comprender el desafío y cómo codificar algoritmos básicos, Austin crea un proyecto VEXcode VR que utiliza el sensor ocular hacia abajo para detectar el borde del patio de juegos y conducir en reversa para evitar dañar el coral.

Captura de pantalla_2023-03-07_at_3.47.02_PM.png

Convertir un solo bloque en interruptor

Convertir 1 bloque


Ahora que Austin tiene un proyecto que ha probado y verificado, el siguiente paso es convertir un bloque a Switch para comenzar a explorar Python. 


Los bloques se pueden convertir a Switch presionando prolongadamente o haciendo clic derecho en el bloque, luego seleccionando la opción 'Convertir a Switch Block', como se muestra en el video aquí.

Austin ahora puede ver que el bloque [Drive for] se convirtió en el comando Python drive_for. Después de la conversión, Austin ejecuta el proyecto para garantizar que siga funcionando según lo previsto. Después de la conversión, Austin quiere aprender más sobre el comando drive_for. Al abrir la Ayuda del bloque [Drive for], Austin puede establecer conexiones entre los parámetros del bloque y el comando Python.

Uso de la Ayuda para obtener más información sobre los comandos Switch de Python

Abrir ayuda


Para ver la información del comando Switch Python en la Ayuda, Austin abre la ventana de Ayuda y selecciona el bloque [Drive for], luego se desplaza hasta la parte inferior como se muestra en el video aquí. 

La Sra. Hunter se registró y pudo ver que Austin estaba aprendiendo más sobre el bloque [Drive for]. Ella lo desafió a aplicar lo aprendido al convertir un bloque y escribir en un bloque nuevo. Ella mostró cómo arrastrar un bloque Switch e hizo que Austin intentara escribir un comando turn_for en el bloque. Austin abre la Ayuda del bloque y toma nota sobre la estructura del comando. 

Escribir en un bloque de interruptores

Agregar un bloque


Austin conoce el comando de Python al consultar la Ayuda y quiere escribir directamente en un bloque Switch. Al arrastrar un bloque [Cambiar pila] desde la Caja de herramientas, Austin lo agrega encima del bloque [Girar hacia]. 

Escribe en el bloque


Luego, Austin usa el cursor para seleccionar el bloque Switch y comienza a escribir el comando Python turn_for como se muestra aquí. 


Después de escribir el nuevo comando y asegurarse de que los parámetros coincidan con el bloque original, se puede eliminar el bloque [Girar hacia]. 

La Sra. Hunter viene para comprobar el progreso de Austin. Ve el proyecto Switch y pide verlo ejecutarse para asegurarse de que los comandos se escriban correctamente. Después de verificar que el proyecto funciona, demuestra otra característica: los bloques de varias líneas.

Copiar y pegar


El bloque [Cambiar pila] puede tener varias líneas de código escritas en su interior. Austin copia el texto turn_for y lo pega en el bloque de arriba como se muestra en el video aquí.

 

Austin ve que al presionar 'enter' o 'return' en el teclado, se pueden agregar líneas adicionales al bloque y continúa agregando comandos de Python.

Sintiéndose como un maestro de los comandos de Drivetrain en Python, Austin imprime un certificado y guarda el proyecto para la próxima vez.

Conversión de pilas para cambiar

Más adelante en el año escolar, la Sra. Hunter vuelve a visitar la actividad de limpieza de los arrecifes de coral y desafía a los estudiantes a obtener una puntuación más alta o utilizar codificación basada en texto. Si bien Austin ha estado usando comandos Drivetrain en bloques Switch, esta actividad es una oportunidad para aprender más sobre el equivalente de los bloques 'C' y los booleanos en Python. 

Convertir contenedor


Austin mantiene presionado o hace clic derecho en el bloque [Si, entonces, si no] y selecciona "Convertir envoltorio y contenido en bloque Switch". Esto convierte el bucle y el contenido del bucle en un único bloque Switch.


Tenga en cuenta la sangría una vez completada la conversión. Varios comandos en un bloque Switch deben tener la sangría adecuada para funcionar según lo previsto.

Bloques de interruptores adicionales

Si bien Austin ha estado usando exclusivamente el bloque [Switch Stack], hay bloques Switch adicionales disponibles. Austin está listo para entregar un proyecto mejorado de limpieza de arrecifes de coral, pero hace un plan con la Sra. Hunter para probar un nuevo tipo de bloque Switch como los que se enumeran a continuación en la siguiente clase.

Los bloques de interruptores siguen las mismas convenciones de forma que otros bloques. La siguiente tabla muestra la comparación entre la forma del bloque, su significado y los bloques Switch del mismo tipo.

Forma de bloque Descripción Ejemplos de bloques Ejemplos de interruptores
Bloques de sombrero Comience una pila de bloques y déles forma para unir bloques debajo de ellos. definir bloque de nombre de impresión Captura de pantalla 2023-07-28 a las 17.09.19.png
apilar bloques Realizar comandos principales. Tienen forma para fijarse encima o debajo de otros bloques de pila. unidad para bloque de pila Captura de pantalla 2023-07-28 a las 17.09.22.png
bloques booleanos Devuelve una condición como verdadera o falsa y encaja dentro de cualquier bloque con entradas hexagonales (de seis lados) para otros bloques. bloque prensado del parachoques izquierdo Captura de pantalla 2023-07-28 a las 17.09.27.png
Bloques de reportero Informa los valores en forma de números y encaja dentro de cualquier bloque con entradas ovaladas para otros bloques. temporizador en bloque de segundos Captura de pantalla 2023-07-28 a las 17.09.30.png
bloques C Repita los bloques dentro de ellos o verifique si una condición es verdadera o falsa. Tienen forma para unir bloques de pila encima, debajo o dentro de ellos. bloque de bucle para siempre si no, bloquear Captura de pantalla 2023-07-28 a las 17.09.34.png Captura de pantalla 2023-07-28 a las 17.09.38.png

Poniendolo todo junto

Mientras la Sra. Hunter observaba a Austin probar cómo escribir diferentes comandos de Python en bloques de Switch, pudo ver cómo Switch permitía a sus estudiantes desarrollar su propio aprendizaje. Todos sus alumnos tuvieron diferentes experiencias de codificación antes de comenzar su clase, y los desafíos dentro de VEXcode VR les permiten codificar en sus propios niveles. Algunos estudiantes codifican únicamente en bloques, otros en Python y otros, como Austin, usan Switch para realizar la transición a la codificación en Python. Durante los siguientes meses, Austin pasó a codificar exclusivamente en Python, aplicando lo aprendido con el uso de Switch para hacer que la transición de bloques a texto sea mucho más fácil y fluida. 

VEXcode VR Switch permite a los profesores, como la Sra. Hunter, ser facilitadores del aprendizaje mientras los estudiantes de todos los diferentes niveles de codificación completan el mismo desafío. Todo mientras los estudiantes, como Austin, se sienten capacitados para probar nuevos métodos para resolver actividades de codificación a medida que pasan de bloques a texto usando VEXcode VR Switch.


1Weintrop, David y Uri Wilensky. "Cómo las modalidades basadas en bloques, basadas en texto y híbridas de bloque/texto dan forma a las prácticas de programación de los principiantes".  Revista Internacional de Interacción Niño-Computadora 17 (2018): 83-92

Last Updated: