|
Acadêmico(a): Júlio Vilmar Gesser |
Título: Compilador Java 5.0 para Gerar Código C++ para Plataforma Palm Os |
|
Conclusão: |
Desenvolver um compilador para uma linguagem orientada a objetos não é uma tarefa simples. Mesmo utilizando ferramentas que auxiliam o desenvolvimento dos analisadores léxico e sintático, como o gerador de parser JavaCC, a implementação da análise semântica e da geração de código, entre outras tarefas, exige bastante dedicação. O objetivo principal deste trabalho foi alcançado com sucesso. O compilador desenvolvido mostrou-se capaz de detectar os erros léxicos, sintáticos e semânticos nos programas nele compilados. Os erros léxicos e sintáticos são detectados pelo parser gerado pela ferramenta JavaCC. Apesar de não ter sido possível desenvolver toda a análise semântica do Java, boa parte foi implementada. Tem-se que uma das metas da análise semântica seria avisar o desenvolvedor sobre bibliotecas utilizadas no programa Java que não foram implementadas em C++, objetivo este que não foi alcançado. No entanto, as técnicas utilizadas no desenvolvimento do analisador semântico podem servir de base para trabalhos futuros na área de compiladores. A publicação da gramática e da AST implementadas para a comunidade de desenvolvedores foi um fator importante para este trabalho. Isto permitiu melhorias na qualidade da gramática e ajudou outros desenvolvedores com necessidades similares. O gerador de código C++ é capaz de gerar código formatado e sem perder as características do código original. O suporte ao GC foi de grande importância para este trabalho, pois sem ele não seria possível transformar código Java em código C++ funcionalmente equivalente. As bibliotecas da API do Java escritas em C++ conseguiram obter êxito no seu propósito, permitindo execução de interfaces gráficas do AWT no Palm OS sem perder muitas características em relação ao Java. Isto permite afirmar que é possível desenvolver outros componentes gráficos sem grandes dificuldades. Por fim, pode-se concluir que o desenvolvimento de um compilador para a linguagem Java que gere código C++ nativo para Palm OS é viável. Este compilador foi implementado visando facilitar o desenvolvimento de software para Palm OS. E, de fato, este trabalho pode comprovar que em partes isto é possível, pois desenvolver aplicativos em Java é bem mais simples do que codificar o aplicativo nativo similar para Palm OS em C ou C++. |
|
|