Informações da Classe
Séries: do 7º ano do fundamental ao 3º ano do ensino médio (os alunos precisam ter 13 anos ou mais)
Duração da aula: 1 hora
Ferramenta utilizada: Modo Criativo do Fortnite
Classe/ambiente de aprendizagem: é recomendado ter um dispositivo compatível com Fortnite e conexão com a internet para cada aluno. Um laboratório de informática deve servir de ambiente ideal.
Contato do Autor
Autores: Steven Isaacs e Brian Dickman
E-mail: [email protected] | [email protected]
Twitter: @mr_isaacs | @cleverlike
LinkedIn: https://www.linkedin.com/in/steve-isaacs/ | https://www.linkedin.com/in/cleverlike
DESCRIÇÃO DO AMBIENTE DE AULA/APRENDIZAGEM
Esta aula foi desenvolvida para a Hour of Code durante a Semana de Educação em Ciência da Computação.
Ela pode ser útil isoladamente, mas também pode ser usada junto a outras atividades na conclusão de um projeto maior.
O autor Steve Isaacs ensina que a Criação e Desenvolvimento de Jogos funciona como um ambiente de aprendizagem de tarefas ou escolhas que oferece aos estudantes a oportunidade de utilizar diferentes abordagens para alcançar os resultados do aprendizado com base em seus próprios interesses, em termos de conteúdo e opções de projeto.
O autor Brian Dickman estudou ciência de computação e, hoje, produz conteúdo divertido e educativo para videogames conhecidos em seu próprio estúdio de desenvolvimento de jogos.
Visão Geral da Aula
Você tem o que é preciso para escapar da torre de curiosidades? Ou ainda melhor, será que você é capaz de criar um jogo de fuga da torre de curiosidades?
Esta atividade demonstrará o uso de funções no Modo Criativo do Fortnite; nela, você receberá a tarefa de criar um jogo que exige que o jogador responda a várias perguntas de curiosidades para fugir. Cada resposta correta acionará a função que permite ao jogador avançar com uma música recompensadora e um efeito visual. Respostas incorretas acionarão um efeito sonoro e visual não muito agradável e exigirão que o jogador tente novamente.
Ao concluir essa atividade, os estudantes entenderão o básico de funções e a relação delas com a programação através do uso do sequenciador e de uma série de dispositivos.
Resultados Almejados
Qual é o resultado de aprendizagem para os alunos?
PERGUNTAS ESSENCIAIS/GRANDES IDEIAS
Os estudantes aprenderão conceitos da ciência da computação como parte de uma atividade importante, e não apenas a sintaxe como uma habilidade isolada?
Aprender conceitos da ciência da computação como as funções em uma atividade no Modo Criativo do Fortnite ajudará a entender esse conceito em um ambiente de codificação de uma forma geral?
Estudantes podem aprender conceitos da ciência da computação através de mecânicas de jogo?
Os estudantes terão mais motivação para aprender sobre ciência da computação se os conceitos forem introduzidos em um ambiente de jogo?
Atividades de Aprendizagem
Introdução a Funções
Uma função é uma unidade de código que geralmente é definida por seu papel em uma estrutura de código maior. Especificamente, uma função contém uma unidade de código que funciona com várias entradas — muitas delas variáveis — e produz resultados concretos envolvendo mudanças em valores variáveis ou operações reais com base nas entradas.
– de Techopedia.com
Ou, de forma mais simples:
Uma função é um trecho de código que você pode chamar repetidas vezes com facilidade.
– de code.org
Por exemplo, na atividade desta aula os estudantes configurarão várias funções usadas para criar um show de perguntas e respostas no Modo Criativo do Fortnite. Essencialmente, cada função (representada pelo sequenciador) executará uma série de comandos (usando dispositivos) no jogo.
Pseudocódigo é o ato de simular a escrita de um código para ilustrar a ideia que o código representaria. O pseudocódigo exibiria a estrutura geral, mas não necessariamente seguiria a sintaxe correta. Nestas aulas, usaremos periodicamente pseudocódigos periodicamente para ilustrar os conceitos.
Em termos de pseudocódigos, isso pode ser representado como:
Função 1 (askQuestion): iniciar a rodada/fazer uma pergunta ao jogador Função 2 (startTimer): o cronômetro de contagem regressiva
minhaFunção(Perguntar) Fazer o seguinte Redefinir botões de resposta Reproduzir som Escolher número aleatório para a pergunta Apresentar a Pergunta minhaFunção(IniciarTemporizador) Inicia a contagem regressiva Se a contagem regressiva chegar a 0, Tempo acabou Reproduzir som Exibir mensagem ("Desculpe, você não respondeu a tempo") Ativar próxima pergunta Encerrar Função Encerrar Função
Função 3 (correctAnswer): minhaFunção(RespostaCerta) Fazer o seguinte Reproduzir som feliz Exibe a mensagem (“Correto! Ótimo trabalho!!”) Adicionar ponto à pontuação Ativar próxima pergunta EncerrarFunção EncerrarFunção
Função 4 (wrongAnswer): minhaFunção(RespostaErrada) Fazer o seguinte Reproduzir som ruim Exibir mensagem ("Desculpe, tente novamente!") Ativar próxima pergunta EncerrarFunção
No exemplo acima, quando a função (Perguntar) é iniciada, várias coisas acontecem:
Redefinir os botões de resposta.
Reproduzir um som para indicar que uma pergunta será feita.
Escolher um número aleatório para determinar qual pergunta de curiosidades será feita.
Apresentação da pergunta ao jogador.
Depois, apresentamos outra função (IniciarTemporizador) que inicia:
Iniciar a contagem regressiva.
Soltar um som quando o temporizador chegar a 0 para encerrar a oportunidade de responder a esta pergunta.
Adicionamos mais duas funções (correctAnswer) e (wrongAnswer). Elas iniciam o seguinte:
Reproduzir um som.
Ajustar a pontuação se necessário.
Exibir uma mensagem.
Ativar a próxima pergunta.
Temos um vídeo explicando como funciona:
Princípios de CS: como definir e chamar funções
Funções podem ser usadas em qualquer linguagem de programação e também em ambientes como o Modo Criativo do Fortnite.
No Fortnite, usaremos o Sequencer e colocaremos nossos eventos/ações dentro do Sequencer para que sejam executadas quando ele for acionado.
Atividades
Confira o passo a passo do Guia do Estudante e as Anotações do Professor para realizar a atividade.
Os alunos podem acessar o Guia do Estudante e usá-lo como base.
Use o gabarito disponível para download para avaliar o desempenho do aluno.
RECURSOS EXTERNOS
Princípios de CS: introdução às variáveis parte 1 Princípios de CS: introdução às variáveis parte 2 Definição de variáveis
Mapeamento de Padrões
1A-AP-09 Ajuste a forma como os programas armazenam e manipulam dados utilizando números ou outros símbolos para representarem informações.
1B-AP-10 Crie programas que incluam sequências, eventos, loops e condicionais.
1B-AP-12 Modifique, misture ou incorpore partes de um programa existente no seu próprio trabalho para desenvolver algo novo ou adicionar recursos mais avançados a ele.
1B-AP-15 Teste e depure (identificar e corrigir erros) um programa ou algoritmo para garantir que ele funcione da forma adequada.
2-AP-10 Use fluxogramas e/ou pseudocódigos para resolver problemas complexos como os algoritmos.
2-AP-13 Divida os problemas e subproblemas em partes para facilitar a criação, a implementação e a revisão dos programas.
2-AP-14 Crie procedimentos com parâmetros para organizar códigos e facilitar a reutilização deles.
2-AP-17 Teste e aperfeiçoe os programas sistematicamente através de diversos casos de teste.
3A-AP-13 Crie protótipos que usam algoritmos para resolver problemas computacionais usando o conhecimento prévio dos alunos e seus interesses pessoais.
3A-AP-16 Projete e desenvolva artefatos computacionais de um modo iterativo para fins práticos, para se expressar ou para resolver um problema social através de eventos e iniciar as instruções.
3A-AP-17 Divida os problemas em partes menores através da análise sistemática, usando recursos como procedimentos, módulos e/ou objetos.
3A-AP-18 Crie artefatos usando procedimentos dentro de um programa, combinações de dados e procedimentos, ou programas independentes mas inter-relacionados.
3A-AP-22 Crie e desenvolva artefatos computacionais que funcionem em conjunto através de ferramentas colaborativas.
CONEXÕES INTERDISCIPLINARES E DO SÉCULO XXI
Esta aula aborda temas relacionados à codificação/Ciência da Computação.
Conexões do século XXI
Pensamento crítico
Criatividade
Colaboração
Comunicação
Alfabetização tecnológica
Flexibilidade
Liderança
Iniciativa
Habilidades sociais
MODIFICAÇÕES E ACOMODAÇÕES
Oferecer modificações e acomodações de acordo com as necessidades do estudante, seja através do ensino individualizado, do plano 504, etc.
Os alunos podem trabalhar em equipes para realizar uma abordagem de programação em par.
O mapa de amostras pode ser fornecido aos estudantes para que o desconstruam/modifiquem.
Fornecer um controle adaptativo/controle de jogo, caso necessário.