Embora os programadores iniciantes estejam mais inclinados a usar a interface baseada em blocos, os alunos mais avançados podem estar interessados em codificar seu robô usando uma linguagem de programação baseada em texto, como Python. Historicamente, esta transição de blocos para programação baseada em texto pode parecer aos alunos como aprender uma linguagem totalmente nova, onde eles não podem aplicar a lógica que aprenderam anteriormente usando blocos.1 O VEXcode VR Switch foi desenvolvido para facilitar a transição da programação baseada em blocos para a baseada em texto. Este artigo abordará como usar o VEXcode VR Switch e orientará você em um cenário de sala de aula para explicar e ilustrar esses recursos no contexto.
Usando blocos de comutação
Switch incorpora elementos familiares de programação baseada em blocos e integra caixas de texto onde comandos de texto podem ser digitados. Isso permite que os alunos façam uma transição lenta para o texto à medida que aprendem os comandos e a sintaxe que acompanham o Python.
O Switch oferece aos alunos uma ponte natural entre os blocos e a codificação baseada em texto. À medida que os alunos se familiarizam com a lógica e a sequência de comandos, eles podem começar a converter um projeto, um bloco de cada vez.
Isso permite que os alunos continuem trabalhando com o fluxo lógico de um programa baseado em blocos, onde podem ver fisicamente coisas como o enrolamento de um loop em torno de outros blocos, ao mesmo tempo que começam a experimentar eles próprios comandos de texto. Depois que os blocos forem convertidos para Switch, os alunos poderão alterar facilmente os parâmetros e começar a entender a sintaxe do comando de texto. Esta seção orientará você no uso do Switch por um aluno para explicar como você pode usar esses blocos em um projeto VEXcode VR.
Switch está disponível com uma licença VEXcode VR Premium. Saiba mais sobre assinaturas VEXcode VR aqui.
Depois de obter sua licença, como acessar o Switch usando as informações deste artigo.
Alternar na sala de aula
Austin é um estudante que codifica com blocos há vários anos. Embora alguns alunos da turma ainda sejam programadores iniciantes, Austin quer aprender mais sobre Python e como começar a codificar o robô VR usando texto. A professora de Ciência da Computação, Sra. Hunter, percebeu que Austin estava pronto para um desafio adicional e introduziu o Switch para ajudar a estruturar o aprendizado de Austin e introduzir a codificação baseada em texto. A Sra. Hunter demonstrou alguns princípios básicos, como converter um bloco e abrir a Ajuda para saber mais sobre o comando Switch Python para cada um dos blocos.
Hoje a Sra. Hunter atribuiu a atividade Limpeza de Recifes de Coral para a turma. Ela usa o VEXcode VR em suas aulas de codificação porque sabe que pode diferenciar seu ensino e alcançar alunos de diversos níveis de codificação com as mesmas atividades. O modo Switch ajuda a facilitar essa diferenciação para estudantes como Austin. Na atividade Coral Reef Cleanup, o objetivo é coletar o máximo de lixo possível antes que a bateria do VR Robot acabe. Compreendendo o desafio e como codificar algoritmos básicos, Austin cria um projeto VEXcode VR que usa o Down Eye Sensor para detectar a borda do Playground e dirigir em marcha à ré para evitar danificar o coral.
Convertendo um único bloco em switch
Converter 1 bloco
Agora que Austin tem um projeto que testou e verificou, o próximo passo é converter um bloco para Switch para começar a explorar Python.
Os blocos podem ser convertidos para Switch pressionando longamente ou clicando com o botão direito no bloco e selecionando a opção 'Converter para Switch Block', como mostrado no vídeo aqui.
Austin agora pode ver que o bloco [Drive for] se transformou no comando drive_for Python. Após a conversão, Austin executa o projeto para garantir que ele ainda funcione conforme planejado. Após a conversão, Austin deseja aprender mais sobre o comando drive_for. Ao abrir a Ajuda do bloco [Drive for], Austin pode fazer conexões entre os parâmetros do bloco com o comando Python.
Usando a Ajuda para saber mais sobre os comandos Switch Python
Abrir Ajuda
Para ver as informações do comando Switch Python na Ajuda, Austin abre a janela Ajuda e seleciona o bloco [Drive for] e, em seguida, rola até o final, conforme mostrado no vídeo aqui.
A Sra. Hunter fez check-in e percebeu que Austin estava aprendendo mais sobre o bloco [Drive for]. Ela o desafiou a aplicar o que aprendeu ao converter um bloco e digitar em um novo bloco. Ela mostrou como arrastar um bloco Switch e fez Austin tentar digitar um comando turn_for no bloco. Austin abre a Ajuda do bloco e anota a estrutura do comando.
Digitando um bloco de switch
Adicionar um bloco
Conhecendo o comando Python ao verificar a Ajuda, Austin deseja digitar diretamente em um bloco Switch. Arrastando um bloco [Switch Stack] da Toolbox, Austin o adiciona acima do bloco [Turn for].
Digite no bloco
Em seguida, Austin usa o cursor para selecionar o bloco Switch e começa a digitar o comando turn_for Python conforme mostrado aqui.
Após digitar o novo comando e garantir que os parâmetros correspondam ao bloco original, o bloco [Turn for] pode ser excluído.
A Sra. Hunter aparece para verificar o progresso de Austin. Ela vê o projeto Switch e pede para vê-lo rodar para garantir que os comandos foram digitados corretamente. Depois de verificar se o projeto funciona, ela demonstra outro recurso - blocos multilinhas.
Copiar e colar
O bloco [Switch Stack] pode ter várias linhas de código digitadas nele. Austin copia o texto turn_for e cola-o no bloco acima, conforme mostrado no vídeo aqui.
Austin vê que ao pressionar 'enter' ou 'return' no teclado, linhas adicionais podem ser adicionadas ao bloco e continua adicionando comandos Python.
Sentindo-se um mestre nos comandos Drivetrain em Python, Austin imprime um certificado e salva o projeto para a próxima vez.
Convertendo pilhas em switch
Mais tarde no ano letivo, a Sra. Hunter revisita a atividade Limpeza de Recifes de Coral e desafia os alunos a obter uma pontuação mais alta ou a usar codificação baseada em texto. Embora Austin tenha usado comandos Drivetrain em blocos Switch, esta atividade é uma oportunidade para aprender mais sobre o equivalente a blocos 'C' e booleanos em Python.
Converter wrapper
Austin mantém pressionado ou clica com o botão direito no bloco [If then else] e seleciona 'Converter wrapper e conteúdo em Switch Block'. Isso converte o loop e o conteúdo do loop em um único bloco Switch.
Observe o recuo após a conclusão da conversão. Vários comandos em um bloco Switch devem ter o recuo adequado para funcionar conforme esperado.
Blocos de comutação adicionais
Embora Austin use exclusivamente o bloco [Switch Stack], existem blocos Switch adicionais disponíveis. Austin está pronto para entregar um projeto aprimorado de limpeza de recifes de coral, mas faz um plano com a Sra. Hunter para tentar um novo tipo de bloco Switch como os listados abaixo na próxima aula.
Os blocos de comutação seguem as mesmas convenções de formato dos outros blocos. A tabela aqui mostra a comparação entre o formato do bloco, seu significado e os blocos Switch do mesmo tipo.
Forma de bloco | Descrição | Exemplos de blocos | Exemplos de troca |
---|---|---|---|
Blocos de chapéu | Comece uma pilha de blocos e modele-os para prender os blocos abaixo deles. | ||
Empilhar blocos | Execute os comandos principais. Eles são moldados para serem fixados acima ou abaixo de outros blocos empilhados. | ||
Blocos booleanos | Retorna uma condição como verdadeira ou falsa e cabe dentro de qualquer bloco com entradas hexagonais (seis lados) para outros blocos. | ||
Blocos de repórter | Relata valores na forma de números e cabe dentro de qualquer bloco com entradas ovais para outros blocos. | ||
Blocos C | Faça um loop no(s) bloco(s) dentro deles ou verifique se uma condição é verdadeira ou falsa. Eles são moldados para anexar blocos empilhados acima, abaixo ou dentro deles. |
|
|
Juntando tudo
Enquanto Hunter observava Austin testar a digitação de diferentes comandos Python em blocos Switch, ela pôde ver como o Switch permitiu que seus alunos estruturassem seu próprio aprendizado. Todos os seus alunos tiveram diferentes experiências de codificação antes de iniciar a aula, e os desafios do VEXcode VR permitem que eles codifiquem em seus próprios níveis. Alguns alunos codificam apenas em blocos, alguns em Python e outros, como Austin, usam Switch para fazer a transição para a codificação Python. Nos meses seguintes, Austin passou a codificar exclusivamente em Python, aplicando o aprendizado do uso do Switch para tornar a transição de blocos para texto muito mais fácil e suave.
O VEXcode VR Switch permite que professores, como a Sra. Hunter, sejam facilitadores do aprendizado enquanto alunos de todos os diferentes níveis de codificação completam o mesmo desafio. Ao mesmo tempo, os alunos, como Austin, se sentem capacitados para experimentar novos métodos de resolução de atividades de codificação à medida que fazem a transição de blocos para texto usando o VEXcode VR Switch.