Programe o seu próprio game



Documentos relacionados
Tecnologia de biometria da mão

Fornecido pelo TryEngineering -

Fornecido pelo TryEngineering -

Fornecido pelo TryEngineering -

Experimente os números binários!

Máquinas simples de cozinha

E n v i a n d o a b a t a t a f r i t a

Fornecido pelo TryEngineering -

Fornecido pelo TryEngineering -

Fornecido pelo TryEngineering -

Fornecido pelo TryEngineering -

Projetos Curriculares LEGO Education WeDo 2.0

Circuitos em série e em paralelo

Fundamentos de Lógica e Algoritmos. Aula 3.1 Introdução a Programação. Prof. Dr. Bruno Moreno

ATIVIDADES PRÁTICAS SUPERVISIONADAS

Algoritmos e Programação

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

Fornecido pelo TryEngineering - Clique aqui para dar seu feedback sobre esta lição

A Informática Na Educação: Como, Para Que e Por Que

Teoria da Computação (BBC244)

Isolantes e condutores

Linguagens Formais e Autômatos. Tiago Alves de Oliveira

Introdução à Programação de Computadores Parte I

Fornecido pelo TryEngineering -

4 Sistema Computacional:

Depois do estudo deste capítulo, o estudante deve ser capaz de:

Plano de Ensino. Unidade Escolar Interdisciplinar. Ensino Fundamental (8 a 12 anos) - Programação com Scratch

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

Lógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto

Para ilustrar um pouco de tudo o que foi exposto sobre nosso programa, trouxemos alguns exemplos do nosso material:

Linguagens Formais e Autômatos (BBC242) Professor: Anderson Almeida Ferreira DECOM-UFOP

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

Introdução a Programação

Trema com os sismógrafos!

Resumo de Objetivos de Aprendizagem de Computação no Ensino Fundamental (Currículo de Referência CSTA/ACM K-12)

Ponte de palitos. Fornecido pelo TryEngineering -

Java Básico. Aula 1 por Thalles Cezar

HAPPY CODE ALTO DOS MOINHOS

A UTILIZAÇÃO DO SOFTWARE GEOGEBRA E SUAS CONTRIBUIÇÕES NO ENSINO E NA APRENDIZAGEM EM MATEMÁTICA

Transformando seu BBC micro: bit em jogo. Podemos jogar com o BBC micro:bit?

Disciplina de Algoritmos e Programação

Introdução. A quem se destina este livro. Sobre o que este livro é (e não é)

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

O Robô Educador Introdução

SOFTWARES EDUCATIVOS MANUAL TUXMATH

Passo-a-passo para desenvolver um Programa usando a Linguagem Python

Plano de Trabalho Docente Ensino Técnico

Aula 4 Introdução ao C

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

PLANIFICAÇÃO MODULAR - INFORMÁTICA

O que é a Teoria em Ciência da Computação. Introdução à Ciência da Computação Mário S. Alvim

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Aula de hoje. Programação. Comunicação com computadores. Comunicação com computadores. Comunicação com computadores. Comunicação com computadores

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II PARA ENGENHARIA. Prof. Dr. Daniel Caetano

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM PYTHON

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM PYTHON

Como realizar matrícula online no SIGAA

P R O J E T O E U R O P E U P R O M O V I D O P O R :

Introdução aos Algoritmos

Fornecido pelo TryEngineering - Clique aqui para dar seu feedback sobre esta lição

PLANIFICAÇÃO INTRODUÇÃO ÀS TECNOLOGIAS DE INFORMAÇÃO BLOCO I

Introdução ao Pensamento Computacional. Maristela Alcântara

TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I

Correção Ortográfica. Processamento Estatístico da Linguagem Natural. Correção de Erros. Distância Mínima de Edição. Distância Mínima de Edição

MC-102 Aula 01. Instituto de Computação Unicamp

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

Introdução aos Algoritmos

Fundamentos de Sistemas Operacionais

Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos. Prof. Dr. Bruno Moreno

BCC402 Algoritmos e Programação Avançada. Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Tóffolo 2011/1

Prof. Luiz A. Nascimento

1 TECNOLOGIA ELEMENTAR CAPÍTULO 1 E-books PCNA. Vol. 1 TECNOLOGIA ELEMENTAR CAPÍTULO 1 INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO C.

Projete e construa uma sacola para doces melhor

Introdução à Informática

APOSTILA DE INFORMÁTICA WORD PAD E TECLADO

Fornecido pelo TryEngineering - Clique aqui para dar seu feedback sobre esta lição

Fabrício Jailson Barth BandTec

GEOGRAFIA UNIVERSOS. Por que escolher a coleção Universos Geografia

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel

Fundamentos de Bancos de Dados 3 a Prova Caderno de Questões

PROGRAMAÇÃO DE COMPUTADORES

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II

60 mins anos de idade. Um Projeto de Energia para Os Metas Globais. Preparação. Assuntos. Resultado do aprendizado

Projeto de Desenvolvimento de Software

Linguagens Formais e Autômatos. Apresentação do Plano de Ensino

TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE. Professora: Isabela C. Damke

Introdução à Engenharia ENG1000


Apresentação da ferramenta de programação. Comandos de entrada e saída. Prof. Alex Camargo

Engenharia de Software II

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II

TIeducar. Educando com TI. Tecnologia da Informação a Serviço da Educação

Programação de Computadores I Introdução PROFESSORA CINTIA CAETANO

Usando o e a Internet

Transcrição:

Programe o seu próprio game Fornecido pelo TryEngineering - Foco da lição A lição enfoca como os engenheiros de software projetam jogos de computador e outros softwares. Os estudantes trabalham em equipe para desenvolver um programa de computador simples, usando um software gratuito que está disponível em diversos idiomas. As equipes avaliam os jogos desenvolvidos pelas outras equipes e apresentam suas descobertas à turma. Resumo da lição A atividade Programe o seu próprio game aborda o trabalho dos engenheiros de software e permite que equipes de estudantes desenvolvam seu próprio jogo de computador, usando software simples e gratuito. As equipes apresentam seus jogos à turma, avaliam os outros jogos e refletem sobre a experiência de engenharia. Faixa etária 11-18 (Nota: esta lição pode ir de programação muito simples ou edição de programas, para estudantes mais jovens, até programação mais avançada, para alunos mais velhos ou adiantados.) Objetivos Aprender como engenheiros de software desenvolvem jogos de computador. Aprender sobre o processo de reengenharia de produto. Aprender como equipes de engenharia tratam a solução de problemas. Aprender sobre trabalho em equipe e como trabalhar em grupo. Resultados esperados para os alunos Como resultado desta atividade, os estudantes devem desenvolver uma compreensão de: Engenharia de software e programação. Projeto e engenharia de produtos. Solução de problemas. Trabalho em equipe. Programe o seu próprio game Página 1 de 10

Atividades da lição Os estudantes aprendem sobre programação básica de computadores e sobre o trabalho de engenheiros de software. Os estudantes trabalham em equipe para desenvolver um programa de computador simples, usando um software gratuito que está disponível em diversos idiomas. Os estudantes constroem seus próprios jogos e avaliam aqueles desenvolvidos por outras equipes de estudantes. Recursos/Materiais Documentos de recursos do professor (anexos). Manual do professor de software, opcional: www.kidsprogramminglanguage.com/kplv1userguideforteachers.zip. Folhas de trabalho do aluno (anexas). Folhas de recursos do aluno (anexas). Alinhamento a grades curriculares Consulte a folha de alinhamento curricular anexa. Recursos na internet TryEngineering (). Kids Programming Language (linguagem de programação para crianças - www.kidsprogramminglanguage.com). Padrões da ITEA para a Educação Tecnológica: conteúdo para o estudo de tecnologia (www.iteaconnect.org/taa/publications/taa_publications.html). Compêndio McREL de Padrões e Marcas de Referência (www.mcrel.org/standardsbenchmarks). Uma compilação dos padrões atuais do currículo K-12 (ensino fundamental e médio) dos EUA, em formatos pesquisável e navegável. Padrões Educacionais de Ciência dos EUA (www.nsta.org/standards). Leituras recomendadas Game Programming for Teens (ISBN: 1592000681). Atividade escrita opcional Escrever um ensaio ou parágrafo descrevendo as implicações éticas de adaptar a programação de software de outra pessoa. O conceito de propriedade intelectual é um conceito geral para direitos legais a respeito de certos nomes, material escrito e gravado e invenções. Diga se você é a favor ou contra pagar ou dar algum outro tipo de crédito ao desenvolvedor original do software que você adapta/altera para criar um novo software. Considere que um software original que não teve boas vendas, mas cuja versão editada por você vendeu muito bem. Como idéia de extensão, esta atividade escrita pode se transformar em um debate dos prós e contras do conceito de direitos de propriedade intelectual. Programe o seu próprio game Página 2 de 10

Programe o seu próprio game Para professores: Alinhamento a grades curriculares Nota: Todos os planos de aula deste conjunto são alinhados ao National Science Education Standards dos EUA, produzidos pelo National Research Council e endossados pela National Science Teachers Association, e, se aplicável, ao Standards for Technological Literacy da International Technology Education Association e ao Principles and Standards for School Mathematics do National Council of Teachers of Mathematics. Padrões Educacionais de Ciências dos EUA, 5ª a 8ª séries (idades de 10 a 14 anos) CONTEÚDO PADRÃO A: ciência como investigação Como resultado das atividades, os estudantes devem desenvolver: As habilidades necessárias para realizar investigação científica. CONTEÚDO PADRÃO E: ciência e tecnologia Como resultado das atividades da 5ª a 8ª série, os estudantes devem desenvolver: Habilidades de projeto tecnológico. Compreensão de ciência e tecnologia. CONTEÚDO PADRÃO G: história e natureza da ciência Como resultado das atividades, os estudantes devem desenvolver uma compreensão de: História da ciência. Padrões Educacionais de Ciências dos EUA, 9ª a 12ª séries (idades de 14 a 18 anos) CONTEÚDO PADRÃO A: ciência como investigação Como resultado das atividades, os estudantes devem desenvolver: As habilidades necessárias para realizar investigação científica. CONTEÚDO PADRÃO E: ciência e tecnologia Como resultado das atividades, os estudantes devem desenvolver: Habilidades de projeto tecnológico. Compreensão de ciência e tecnologia. CONTEÚDO PADRÃO G: história e natureza da ciência Como resultado das atividades, os estudantes devem desenvolver uma compreensão de: Perspectivas históricas. Padrões para a Educação Tecnológica - todas as idades A natureza da tecnologia Padrão 2: Os estudantes desenvolverão uma compreensão dos conceitos fundamentais da tecnologia. Padrão 3: Os estudantes desenvolverão uma compreensão dos relacionamentos entre tecnologias e as conexões entre tecnologia e outros campos de estudo. Programe o seu próprio game Página 3 de 10

Tecnologia e sociedade Padrão 7: Os estudantes desenvolverão uma compreensão da influência da tecnologia na história. Projeto Padrão 9: Os estudantes desenvolverão uma compreensão do projeto de engenharia. Padrão 10: Os estudantes desenvolverão uma compreensão do papel da busca de erros, pesquisa e desenvolvimento, invenção e inovação e experimentação na solução de problemas. Habilidades para um mundo tecnológico Padrão 12: Os estudantes desenvolverão habilidades para usar e manter produtos e sistemas tecnológicos. O mundo projetado Padrão 17: Os estudantes desenvolverão uma compreensão e serão capazes de selecionar e usar tecnologias de informação e comunicação. Princípios e Padrões para a Matemática Escolar Padrão de números e operações Como resultado das atividades, os estudantes devem desenvolver: Entendimento de números, maneiras de representar números, relacionamento entre números e sistemas de numeração. Fluência na realização de cálculos e realização de estimativas razoáveis. Padrão de conexões Como resultado das atividades, os estudantes devem desenvolver: Entendimento de como idéias matemáticas estão interconectadas e utilizam umas às outras para produzir um todo coerente. Reconhecimento e aplicação da matemática em contextos fora da matemática. Programe o seu próprio game Página 4 de 10

Programe o seu próprio game Para professores: Recursos do professor Propósito da lição Explorar a solução de problemas de engenharia trabalhando em equipes para programar um novo jogo de computador. Os estudantes aprendem sobre programação básica de computadores e sobre o trabalho de engenheiros de software. Os estudantes trabalham em equipe para desenvolver um programa de computador simples, usando um software gratuito que está disponível em diversos idiomas. Os estudantes constroem seus próprios jogos e avaliam aqueles desenvolvidos por outras equipes de estudantes. Objetivos da lição Aprender como engenheiros de software desenvolvem jogos de computador. Aprender sobre o processo de reengenharia de produto. Aprender como equipes de engenharia tratam a solução de problemas. Aprender sobre trabalho em equipe e como trabalhar em grupo. Materiais Folhas de recursos e folha de trabalho do aluno. Acesso a computador e/ou internet (software gratuito pode ser obtido via download e instalado em computadores baseados no Windows sem acesso à internet; o software está disponível em diversos idiomas). Procedimento 1. Faça o download e instale o software gratuito Kids Programming Language software (www.kidsprogramminglanguage.com) em diversos computadores ou em um laboratório, para que os alunos possam, trabalhando em equipes, desenvolver seus jogos de computador. 2. Você também pode imprimir o manual do professor, disponível em www.kidsprogramminglanguage.com/kplv1userguideforteachers.zip, embora as instruções na tela possam ser suficientes. 3. Mostre aos estudantes as diversas folhas de referência do aluno. Elas podem ser lidas em sala ou fornecidas como material de leitura como lição de casa para a noite anterior à aula. As páginas de começando a programar devem ser lidas pelos alunos antes de usar o software em um computador. 4. Divida os alunos em equipes de 2 a 3 estudantes (você pode precisar ajustar esse número, dependendo de quantos computadores estiverem disponíveis), fornecendo um conjunto de materiais por grupo. 5. Explique que eles são uma equipe de engenheiros de software e precisam desenvolver um novo jogo de computador que será usado por alunos de 6 a 10 anos. 6. Cada equipe de estudantes desenvolverá um jogo simples e mostrará à turma. 7. Cada grupo de alunos avaliará os jogos desenvolvidos pelas outras equipes e preencherá uma folha de trabalho de avaliação/reflexão. Programe o seu próprio game Página 5 de 10

Dicas Esta lição pode ser ampliada para um projeto com um semestre de duração; ou simplificada, instruindo-se os alunos a criar ou aperfeiçoar qualquer um dos jogos de demonstração que são fornecidos pelo desenvolvedor do software. O jogo de adivinhar o número, por exemplo, pode ser modificado dentro do tempo de uma única aula. Caso opte por pedir que os alunos modifiquem um jogo, peça que eles comecem explorando o jogo existente, reúnam-se em equipes para determinar que mudanças gostariam de fazer no jogo e então tentem executar seus planos. Tempo necessário De uma a duas sessões de 45 minutos. Programe o seu próprio game Página 6 de 10

Programe o seu próprio game Recurso do aluno Engenharia de software: a história dos jogos de computador O início dos jogos de computador Embora os computadores pessoais só tenham se tornado populares com o desenvolvimento do microprocessador, computadores de grande porte e minicomputadores já eram usados para jogos de computador pelo menos desde a década de 1960. Um dos primeiros jogos de computador foi desenvolvido em 1961, quando os estudantes do MIT Martin Graetz e Alan Kotok, juntamente com o empregado do MIT Stephen Russell, desenvolveram o Spacewar!, em um computador usado para cálculos estatísticos. Como mostra a imagem à direita, o jogo consistia em duas naves espaciais controladas pelos jogadores que manobravam ao redor de uma estrela central e tentavam destruir uma à outra. A primeira geração de jogos para PC consistiu em aventuras de texto ou ficção interativa, nas quais o jogador se comunicava com o computador digitando comandos em um teclado. Em meados da década de 1970, jogos foram desenvolvidos e distribuídos através de grupos de entusiastas e revistas de jogos de computador, tais como a Creative Computing e, posteriormente, a Computer Gaming World. Essas publicações ofereciam o código-fonte dos jogos, que podiam ser digitados em um computador e jogados; elas também incentivavam os leitores a enviar seu próprio software, para competições. O que os engenheiros de software fazem Os engenheiros de software que trabalham no desenvolvimento de sistemas ou aplicativos analisam as necessidades do usuário e projetam, constroem, testam e dão manutenção a softwares ou sistemas aplicativos de computador. Os engenheiros de software podem estar envolvidos no projeto e desenvolvimento de diversos tipos de software, inclusive software para sistemas operacionais e redes de computadores, bem como compiladores, que convertem os programas para execução em um computador. Usando a programação, ou codificação, os engenheiros de software instruem um computador, linha a linha, sobre como realizar uma operação. Eles também resolvem os problemas técnicos que surgem. Os engenheiros de software precisam ter boas habilidades de programação, mas estão mais voltados a desenvolver algoritmos e analisar e resolver problemas de programação do que a escrever código em si. A Kids Programming Language A Kids Programming Language (linguagem de programação para crianças) é um software gratuito que já teve mais de 800.000 downloads. Ele está disponível em 18 idiomas, inclui jogos simples e permite que os estudantes experimentem a programação de jogos simples em seus próprios computadores. Ele funciona em computadores baseados no Windows e seu download pode ser feito em www.kidsprogramminglanguage.com. Programe o seu próprio game Página 7 de 10

Programe o seu próprio game Recurso do aluno Engenharia de software: algoritmo O que é um algoritmo? Em matemática, computação, lingüística e disciplinas relacionadas, um algoritmo é uma lista finita de instruções bem definidas para a realização de alguma tarefa que, dado um estado inicial, terminará em um estado final bem definido. O conceito de algoritmo originou-se como um meio de registrar procedimentos para a solução de problemas matemáticos, tais como encontrar o divisor comum de dois números ou multiplicar dois números. O conceito foi formalizado em 1936, através das máquinas de Turing, de Alan Turing, e do cálculo lambda de Alonzo Church, que por sua vez formaram as fundações da ciência da computação. Um exemplo simples é um fluxograma, que é basicamente uma seqüência lógica de passos para resolver um problema. Aplicativos de computador Os algoritmos são essenciais para a forma como os computadores processam informações, pois um programa de computador é essencialmente um algoritmo, que diz para o computador que ações específicas efetuar (e em que ordem específica) para realizar uma dada tarefa, tal como calcular uma fatura, imprimir boletins ou realizar uma análise de orçamento. Como um algoritmo é uma lista precisa de passos precisos, a ordem da execução quase sempre será crítica para o funcionamento do algoritmo. Presume-se que as instruções sejam listadas explicitamente, sendo descritas como começando 'do início' e indo 'até o fim' - algo às vezes também chamado de controle de fluxo. Cada ramo da ciência tem seus próprios problemas e precisa de algoritmos eficientes. Problemas relacionados em um campo são, muitas vezes, estudados em conjunto. Alguns exemplos de classes são algoritmos de busca, algoritmos de ordenamento, algoritmos de intercalação, algoritmos numéricos, algoritmos de grafos, algoritmos de strings, algoritmos de geometria computacional, algoritmos combinatórios, aprendizado de máquina, criptografia, algoritmos de compressão de dados e técnicas de análise sintática. Programe o seu próprio game Página 8 de 10

Programe o seu próprio game Folha de trabalho do aluno: você é o engenheiro! Vocês são uma equipe de engenheiros que deve atacar o desafio de desenvolver um novo jogo de computador para crianças de 6 a 10 anos de idade. Preparação 1. Revisem as diversas folhas de referência do aluno. 2. Leiam o manual de programação básica que lhes foi fornecido. Passos da atividade 1. Em equipe, criem um plano e idéia para seu game - e também um nome para ele. No quadro abaixo, escrevam uma descrição de duas frases do seu novo jogo, que possa ser usado em uma propaganda: Nome do game: Descrição: 2. Trabalhem em equipe, usando o software, e construam o jogo. 3. Apresentem seu game para as outras equipes de sua turma, de forma que eles possam ver como o jogo funciona (vocês também testarão os games deles). 4. Respondam às perguntas a seguir sobre o seu jogo e outros jogos desenvolvidos em sua sala de aula. 5. Em equipe, apresentem suas descobertas e reflexões à turma. Perguntas de avaliação 1. Como seus planos para o game mudaram depois que vocês tentaram construí-lo usando o software fornecido? Programe o seu próprio game Página 9 de 10

2. Quanto tempo vocês acham que levariam para desenvolver um novo software de processamento de texto ou gráfico? Quantas pessoas vocês acham que são necessárias para trabalhar em uma equipe de engenharia para construir esse tipo de software? Por quê? 3. Vocês acham que programar um jogo de computador foi mais fácil ou mais difícil do que pensava inicialmente? Por quê? 4. Que desafios vocês encontraram para construir seu game? 5. De que outros games desenvolvidos em sua sala de aula vocês gostaram mais? Por quê? De que características vocês gostaram? 6. Vocês acham que foi mais fácil ou mais difícil ter desenvolvido este game como parte de uma equipe? Vocês acham que teriam sido capazes de criar seu novo projeto se não tivessem trabalhado em equipe? Quais são as vantagens do trabalho em equipe em relação a trabalhar sozinho? 7. O que vocês aprenderam, através desta lição, sobre como os engenheiros resolvem problemas? Programe o seu próprio game Página 10 de 10