da Apresentação

Propaganda
ACADÊMICO: DOUGLAS RUSKOWSKI HAASE
ORIENTADOR: JOSÉ ROQUE VOLTOLINI DA SILVA
Introdução
Objetivos
Fundamentação Teórica
Desenvolvimento
Conclusão
Extensões
Prática da programação em uma máquina
teórica utilizando duas linguagens distintas
MVR: estrutura monolítica
Baseado no ambiente de Oliver (2004)
MVR utiliza a Linguagem Intermediária
Rotulada (LIR)
Disponibilizar uma linguagem de alto nível
(LAN)
Disponibilizar uma linguagem iterativa (LIT)
Compilar ambas as linguagens e gerar código
para a MVR
COMPILADORES
MÁQUINAS
◦ MVR
LIR para MVR
PROGRAMAS
◦ Iterativos
◦ Monolíticos
Ambiente para auxiliar o desenvolvimento de
programas monolíticos
Construção de programas recursivos
Requisitos
Especificação
Implementação
Operacionalidade
Requisitos
◦ Requisitos funcionais
Possuir um editor para escrita de programas em LAN e
LIT
Analisar e compilar os programas escritos e exibir
erros se houverem
Converter os programas escritos em LAN e LIT
para um programa monolítico descrito na forma de
LIR
Exibir o resultado do programa na linguagem objeto
LIR
Salvar o código objeto LIR em arquivo de formato
compatível com o ambiente desenvolvido por Silva
(2004)
Requisitos
◦ Requisitos não funcionais
Ser implementado utilizando a linguagem de
programação Java
Ser implementado utilizando o ambiente Eclipse
Ferramentas utilizadas
◦ GALS (gramática em notação BNF)
◦ Enterprise Architect
Artefatos gerados
◦
◦
◦
◦
Diagramas
Diagramas
Diagramas
Diagramas
de
de
de
de
casos de uso
pacotes
classes
sequência
Exemplo de programa
Exemplos de programas
Casos de uso
Diagrama de pacotes
Diagramas de classes
Diagramas de classes
Diagramas de sequência
Ferramentas utilizadas
◦ Eclipse
◦ GALS
Recursos e técnicas utilizadas
◦ MVC
◦ SWING
Classe Tela: instância de ControleIterativo e
ControleAltoNivel
Classes de controle: instância de
SemanticoIterativo e SemanticoAltoNivel
Classes de semântica: ações semântica e
geração de código objeto
Pilhas de elementos
(identificadores/registradores)
LIT > geração de tabela intermediária nas
ações semânticas > tradução > LIR
LAN > tradução nas ações semânticas > LIR
O desenvolvedor seleciona uma linguagem
fonte para escrever seu programa
O desenvolvedor codifica seu programa e
aciona o botão Gerar código
O ambiente gerador de código efetua a
tradução do programa para LIR
O ambiente exibe em sua console o estado da
geração de código
O ambiente salva o código objeto para
executar na MVR
Comprova-se a funcionalidade da MVR e sua
utilização com mais de uma linguagem fonte
Facilita a prática e didática da demonstração
de programas iterativos e monolíticos
Ainda trabalha apenas com números naturais,
como a MVR
Gera código totalmente compatível com a
MVR
Objetivos atingidos
Criada representação iterativa em forma de
tabela
Auxílio nos estudos de programas iterativos e
monolíticos
Limitação de suportar apenas números
naturais
Criar mais operações para a LIT e LAN
Implementar módulo de visualização passo a
passo de conversão para LIR
Converter LAN para a tabela intermediária
Converter o ambiente de Oliver para Java
>> Demonstração da aplicação.
Download