IFSP- APRENDIZAGEM BASEADA EM PROBLEMA

4 Pages • 2,028 Words • PDF • 189.7 KB
Uploaded at 2021-09-24 14:30

This document was submitted by our user and they confirm that they have the consent to share it. Assuming that you are writer or own the copyright of this document, report to us by using this DMCA report button.


Congresso de Inovação, Ciência e Tecnologia do IFSP - 2016

APRENDIZAGEM BASEADA EM PROBLEMAS APLICADA AO ENSINO DE LINGUAGEM DE PROGRAMAÇÃO COM ROBOCODE Carolina Ayumi Matumoto1, Gabrielle Angeli Poli2, Matheus Carvalho Meira3, Paloma Epprecht e Machado de Campos Chaves4 1

Graduando em Tecnologia em Análise e Desenvolvimento de Sistemas, Bolsista PIBIFSP, IFSP, Câmpus Capivari, [email protected] 2 Graduando em Tecnologia em Análise e Desenvolvimento de Sistemas, Bolsista PIVICT, IFSP, Câmpus Capivari, [email protected] 3 Mestrando em Tecnologia, Faculdade de Tecnologia, UNICAMP, [email protected] 4 Mestre em Educação, Pontifícia Universidade Católica de São Paulo, PUC-SP, [email protected] *Área de conhecimento (Tabela CNPq): Linguagens de Programação – 1.03.03.01-4

Apresentado no 7° Congresso de Iniciação Científica e Tecnológica do IFSP 29 de novembro a 02 de dezembro de 2016 - Matão-SP, Brasil RESUMO: O ensino de linguagem de programação orientada a objetos é parte integrante do currículo obrigatório presente nas instituições de ensino que oferecem cursos na área de informática. Entretanto, disciplinas de linguagem de programação trabalham com níveis elevados de abstração lógica, que demandam dos alunos concentração e dedicação ao estudo. Quando os conteúdos propostos em disciplinas que envolvem programação de computadores não são atingidos, ou são atingidos parcialmente, pode ocorrer o desinteresse ou mesmo desistência do curso. Devido a esse problema, propostas de diversificação de métodos para melhorar e incentivar o aprendizado devem surgir. O presente trabalho indica, a partir de ambientes lúdicos, a associação do jogo educacional digital Robocode ao aprendizado de conceitos de linguagem de programação baseado em problemas. A proposta pretende utilizar desafios gerados no jogo Robocode para criar situações-problema que permitam aos alunos interações com o meio a fim de construir programas e estudar os conceitos pertinentes das disciplinas de linguagem de programação.

PALAVRAS-CHAVE: Linguagem de programação; Aprendizagem; Robocode; PBL.

PROBLEM BASED LEARNING APPLIED TO PROGRAMMING LANGUAGE TEACHING WITH ROBOCODE

ABSTRACT: The object-oriented programming language teaching is a constituent part of the required curriculum in educational institutions that offer courses in computer science. However, programming language subjects deal with high levels of logical abstraction, which require students to be concentrated and dedicated. When the contents proposed in disciplines involving computer programming are not accomplished or accomplished partially, it may cause lack of interest or even withdrawal from the course. Because of these problems, proposals for different methods to enhance and encourage learning should arise. This study shows, from recreational environments, the relation of the digital educational game Robocode with the learning of programming language concepts based on problems. The goal of the project is to use challenges resulting from Robocode game to create problem-solving scenarios that allow students to interact with the learning environment in order to develop programs and study the relevant concepts of programming language subjects.

KEYWORDS: Programming language; Learning; Robocode; PBL

INTRODUÇÃO A importância de jogos educacionais introduzidos em salas de aula surgiu devido à diversificação do método tradicional para teorias pedagógicas com base no construcionismo, que visa o aprendizado por meio de interações dos alunos com tecnologias digitais na educação (FERREIRA e DUARTE, 2012). Papert denominou de construcionista a abordagem pela qual o aprendiz constrói, por intermédio do computador, o seu próprio conhecimento (PAPERT, 1986). Em disciplinas de programação de computadores, de cursos da área de informática, conceitos que envolvem conteúdos abstratos como encapsulamento, herança ou polimorfismo são tratados logo no início das disciplinas de programação. Esses conceitos têm como característica uma abstração lógica que só é compreendida com constante estudo e dedicação, e quando isso não acontece, alunos podem apresentar dificuldade no entendimento dos conteúdos relacionados a compreensão do raciocínio lógico, com aumento de chance de haver desinteresse ou mesmo desistência em disciplinas que envolvem a programação de computadores (SANTOS e COSTA, 2006, p.4). Como hipótese considera-se a utilização de um ambiente no qual o aprendizado admita práticas com interações de modo prazeroso, associado a ferramentas lúdicas que incentivem abordagens dos conceitos necessários para atingir os objetivos relacionados a programação de computadores. Com novas abordagens e métodos para auxiliar na superação de dificuldades de aprendizagem por parte dos alunos, o presente trabalho tem como objetivo propor um ambiente de aprendizagem baseado em problemas associado ao jogo educacional digital Robocode para abordagem de conceitos de programação presentes em ementas de disciplinas de linguagem de programação de modo lúdico. “Bons jogos digitais incorporam bons princípios de aprendizagem” (GEE, 2005).

MATERIAL E MÉTODOS O aprendizado de linguagem de programação, baseia-se principalmente no desenvolvimento de raciocínio lógico para incrementar a habilidade de se comunicar com o computador em linguagem de alto nível. Desenvolver esse raciocínio pode demorar muito caso não haja o treinamento, já que depende muito do empenho do aluno em aprender, empenho que pode ser comprometido em casos de dificuldade na aprendizagem. A utilização de jogos educacionais em sala de aula traz a concepção do construcionismo para dentro do ambiente escolar. Segundo Papert (1994), o construcionismo permite aos alunos analisar de uma forma mais palpável as ideias lógicas descritas nos livros. Em oposição ao paradigma instrucionista (método tradicional), que enfoca no professor como central, que “passa” o conhecimento ao aluno, no construtivismo “o aluno é o sujeito ativo no processo de aprendizagem, o professor age como um agente facilitador no processo e orienta o aluno a buscar seus próprios conhecimentos”(CHAHUÀN-JIMÉNEZ, 2009). A aprendizagem baseada em problemas (Problem Based Learning – PBL) é uma metodologia de ensino que visa o aprendizado a partir de resolução de problemas que o aluno tem em seu dia a dia, o aprendizado é centrado no aluno que deixa de ser apenas um mero receptor da informação e passa a ser um agente em relação ao seu conhecimento. Na PBL está incluso “a capacidade de pensar criticamente, analisar e resolver os problemas complexos do mundo real, para localizar, avaliar e usar de forma adequada os recursos de aprendizagem, para trabalhar cooperativamente, para demonstrar habilidades de comunicação eficaz, e de utilizar o conhecimento e habilidades intelectuais” (CARDOSO, 2011). A linguagem de programação utilizada no presente trabalho é a Java, uma linguagem orientada a objetos, desenvolvida pela Sun Microsystems em 1990, e lançada formalmente em 1995. “O Java é uma poderosa linguagem de programação de computador, divertida para iniciantes e adequada para programadores experientes utilizarem na construção de sistemas de informações importantes. ” (DEITEL, 2010, p. 2). A plataforma utilizada para o desenvolvimento do curso é o Ambiente Virtual de Aprendizagem (AVA) Moodle, uma plataforma on-line de suporte à aprendizagem a distância de software livre. O

sistema é disponibilizado gratuitamente e permite a troca de informações através do chat, além de disponibilizar o envio de material didático. O Robocode foi a ferramenta eleita para o desenvolvimento dos conceitos de programação no curso implementado no AVA Moodle. Robocode é um jogo educacional de programação que consiste no desenvolvimento de robô baseado em linguagem Java ou .NET (C#), implementando classes e objetos para construir sua estratégia de jogo definindo a inteligência artificial do seu robô, segundo a Liga Brasileira de Robocode (SOURCEFORGE, 2016). Muitas instituições utilizam o Robocode como alternativa para o ensino de linguagem de programação (ROBOCODEBRASIL, 2016).

RESULTADOS E DISCUSSÃO O curso Robocode permite uma plataforma que incentiva o aprendizado gradativo e com possibilidades de autonomia do aluno no desenvolvimento dos programas ou mesmo participações em equipes de desenvolvimento colaborativas. O desafio em forma de problemas, gerados dentro jogo (como evolução da movimentação do robô), aumenta o incentivo para se aprender uma linguagem de programação. Com a possibilidade de desenvolver e testar o programa em tempo real, é possível analisar os resultados obtidos a partir do processo de aprendizagem com Robocode. O desafio do jogo pode gerar motivação e interesse nos alunos que, em estágios iniciais da aprendizagem de linguagem de programação, se mostram desinteressados (SANTOS e COSTA, 2006). Com esse advento o curso Robocode utiliza uma forma divertida de se aprender, com a resolução de desafios gerados on-line e conteúdos sendo assimilados de modo transparente pelo aluno. O Robocode possui dois ambientes para serem trabalhados pelos alunos, sendo um de desenvolvimento e outro de simulação. No framework de desenvolvimento, alunos criam robôs com a linguagem de programação Java, e elaboram as estratégias de jogo, utilizando conceitos de programação de ementas de disciplinas de linguagem de programação aplicadas a um problema real. A experiência com o Robocode traz à tona, por meio da competição, o espírito de cooperação e a motivação no desenvolvimento de programas (framework de desenvolvimento) no mesmo ambiente do jogo (framework de simulação), sem a necessidade de instalação de outros compiladores ou plug-ins tipicamente necessários às práticas de linguagem de programão. O desafio em aprimorar o robô, como por exemplo a melhoria da movimentação do robô (Figura 1), estimula o aluno a pesquisar por conceitos de linguagem de programação que envolvem métodos, classes, estruturas de programação, e acima de tudo, desenvolve seu raciocínio lógico, ao observar o desempenho de outros robôs. Na simulação é possível verificar o resultado e analisar a estratégia do próprio robô e dos demais robôs durante a interação dos códigos. Assim, é possível melhorar o desenvolvimento dos programas e criar estratégias com base no resultado da análise efetuada no jogo. Por exemplo, a figura 1 indica a implementação de programa para movimentação do robô com código base do Robocode. A figura 2 exibe código de programação criado por alunos que, após um trabalho de pesquisa, puderam melhorar a precisão da movimentação do robô a partir de conceitos de comandos de decisão.

FIGURA 1. Default de movimentação de Robô

FIGURA 2.Movimentação de um robô utilizando conceitos de lógica e Programação Orientada a Objetos

CONCLUSÕES As considerações apresentadas são fruto de uma pesquisa focada no desenvolvimento de uma plataforma de ensino para um curso de linguagem de programação com o jogo educacional digital Robocode. Com a utilização do Robocode e um ambiente onde os alunos são desafiados a aprender a trabalhar com a pesquisa, estudo e evolução de conceitos como as estruturas de decisão presentes nas disciplinas de linguagem de programação de forma lúdica onde existe a possibilidade de analisar e desenvolver o melhores programas e estratégias para o robô. A aprendizagem baseada em problemas garante a inserção do aluno em situações ativas, com um papel de agente responsável pelo aprendizado, a partir das interações com jogo (desenvolvimento e simulação). A dinâmica do jogo, por exemplo na melhoria da movimentação do robô, gera as motivações e permitem aos alunos variações de análises distintas conforme situações do jogo para pesquisa e estudo de conceitos reais e simulados no desenvolvimento dos robôs. O trabalho aponta possibilidades de introdução do jogo educacional Robocode como ferramenta de auxílio na aprendizagem a partir da geração de desafios no suporte para o significado do estudo e construção dos conceitos. As propostas expõem uma abordagem lúdica do jogo para introduzir conceitos presentes na ementa das disciplinas de linguagem de programação.

AGRADECIMENTOS Ao Programa Institucional de Bolsas de Iniciação Científica (PIBIC) do Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq) que visa apoiar a política de Iniciação Científica desenvolvida nas Instituições de Ensino e/ou Pesquisa. Ao Programa Institucional Voluntário de Iniciação Científica e/ou Tecnológica (PIVICT) do Instituto Federal de Educação, Ciência e Tecnologia de São Paulo (IFSP). REFERÊNCIAS CHAHUÀN-JIMÉNEZ, K. (2009). Evaluación cualitativa y gestión del conocimiento. Educación Y Educadores, v.12, n.3, p.179–195. DEITEL, H. M.; DEITEL, J. P. Java: como programar. 8. ed. São Paulo: Pearson, 2010. FERREIRA, B. J. P.; DUARTE, N. O lema de aprender a aprender na literatura de informática educativa. Educ. Soc., Campinas, v.33, n.121, p.1019-1035, out.-dez, 2012. GEE, J. P. (2005). Learning by design: games as learning machines. Telemeduim. Interactive Educational Multimedia. Anais Da Game Developers Conference. San Jose, CA, v.52, n.1 & 2, p.24– 28. PAPERT, Seymour. A máquina das crianças. Porto Alegre: Artes Médicas, 1994. ROBOCODEBRASIL, O que é Robocode. Disponível em: . Acesso em: 09 jun 2016. SANTOS, R, P. COSTA H, A, X. Análise de metodologias e ambientes de ensino para algoritmos, estruturas de dados e programação aos iniciantes em computação e informática. 2006. Disponível em: . Acesso em: 09 jun 2016. SOURCEFORGE, ReadMe for Robocode. Disponível em: . Acesso em: 09 jun. 2016. VAHLDICK, A. (2006). Uma experiência lúdica no ensino de programação orientada a objetos. Anais Do XVIII Simpósio Brasileiro de Informática na Educação (SBIE), 1–8. Disponível em: . Acesso em: 09 jun 2016.
IFSP- APRENDIZAGEM BASEADA EM PROBLEMA

Related documents

4 Pages • 2,028 Words • PDF • 189.7 KB

2 Pages • 193 Words • PDF • 115.5 KB

7 Pages • 2,232 Words • PDF • 493.7 KB

334 Pages • 88,318 Words • PDF • 17.3 MB

6 Pages • 2,433 Words • PDF • 30.7 KB

12 Pages • 5,298 Words • PDF • 1.1 MB

4 Pages • 1,085 Words • PDF • 258.6 KB

12 Pages • 599 Words • PDF • 484 KB

3 Pages • 289 Words • PDF • 151.3 KB

5 Pages • 804 Words • PDF • 313.7 KB

18 Pages • 4,706 Words • PDF • 366.6 KB