JPortugol – Apresentação do TCC

Download Report

Transcript JPortugol – Apresentação do TCC

JPortugol: Uma Ferramenta
de Auxílio à Aprendizagem de
Algoritmos
Nome:
Andréia Cristina dos Santos Gusmão
Orientador: Prof. Artur Luís Ribas Barbosa
Visão Geral
Problema
E com a lógica,
posso escrever
meus
algoritmos...
Lógica
Como testar os
algoritmos?
E agora?
Como saber
se meu
código está
correto?
Através do Teste de mesa?
Exemplo de Teste de
Mesa
Exemplo Linguagem
Java
Exemplo Linguagem
C
Objetivo
Desenvolver
uma
ferramenta
que
interprete
códigos em
algoritmos.
Metodologia
• Pesquisa Aplicada
• Linguagem Java
• ANother Tool for Language Recognition – (ANTLR)
• Ambiente gráfico ANTLRWorks
Compilador x
Interpretador
• Compilador
Fonte:Aho et al (1995, p. 1)
• Interpretador
• Estrutura utilizada: Análise Léxica
Análise Sintática
Análise Semântica
Demonstração
Ferramenta JPortugol
Conclusão
• Espera-se que realmente essa ferramenta possa
servir de incentivo e motivação para a prática de
testes de algoritmos.
• Aprender algoritmos para aprender a programar.
Referências
•
AHO, Alfred V.; SETHI, Ravi; ULLMAN, Jeffrey D. Compiladores: princípios, técnicas
e ferramentas. Tradução Daniel de Ariosto Pinto. Rio de Janeiro: LTC, 1995.
•
ANTLR v3. Disponível em: http://www.antlr.org. Acesso em: 08 abr. 2010.
•
DELAMARO, Márcio Eduardo. Como Construir um Compilador: Utilizando
Ferramentas Java. São Paulo: Novatec, 2004.
•
HOSTINS, Higor; RAABE, André. Auxiliando a Aprendizagem de Algoritmos com
Ferramenta WebPortugol. In.: XV Workshop de Educação em Computação, XXVII
Congresso da Sociedade Brasileira de Computação, Rio de Janeiro – Rio de Janeiro,
2007. p. 96-105. Disponível em:
http://www.de9.ime.eb.br/~sousamaf/cd/pdf/arq0011.pdf. Acesso em: 07 abr. 2010.
•
MANZANO, José A. N. G.; OLIVEIRA, Jayr F. Estudo dirigido de Algoritmos. 11.
ed. São Paulo: Érica, 2007. p.1-18.
•
PARR, Terence. The Definitive ANTLR Reference: Building Domain-Specific
Languages. EUA: Pragmatic Programmer, 2007.
Obrigada!
“Existe a crença de que só se pode programar o que se
compreende perfeitamente. Essa crença ignora a
evidência de que a programação, como qualquer
outra forma de escrita, é um processo experimental.
Programamos como redigimos, não porque
compreendemos, mas para chegar a compreender.”
(Joseph Weizenbaum)