Aula 33: Apresentação de Trabalhos - Parte 1
Objetivos
- Preparar e realizar a apresentação final do projeto Mini-Pascal.
- Demonstrar cobertura de testes, arquitetura (AST, tabela de símbolos) e decisões de implementação.
- Trocar experiências sobre dificuldades e soluções (parser, semântica, geração de código).
Enfoque da aula
Esta aula conecta o trabalho prático com os objetivos teóricos da disciplina:
- Evidenciar como conceitos de léxico, sintaxe, semântica, IR e otimização foram aplicados na implementação.
- Discutir decisões de engenharia (estruturas de dados, padrões de projeto, estratégias de teste).
- Avaliar a maturidade do projeto como software de engenharia (qualidade de código, automação, documentação).
Conteúdo
A reta final do curso. A apresentação deve demonstrar:
- Cobertura de Testes: Rodar a suíte fornecida. O compilador passa nos testes positivos? Rejeita os negativos?
- Arquitetura: Mostrar o diagrama de classes da AST. Explicar como lidou com a Tabela de Símbolos.
- Dificuldades: Onde a dupla “agarrou”? (Parser? Geração de Código?). Como resolveram?
Esta troca de experiências consolida o aprendizado e conecta teoria (léxico, sintático, semântica, IR) com a prática (estruturas de dados, testes, manutenção).
flowchart LR
Demo[Demo do compilador] --> Testes[Testes]
Demo --> Arquitetura[Arquitetura]
Demo --> Dificuldades[Dificuldades e soluções]
Testes --> Aval[Avaliação]
Arquitetura --> Aval
Dificuldades --> Aval
Critérios de avaliação (referência)
Consulte o plano de ensino 2026-1 para a distribuição de pontos. A apresentação costuma avaliar: funcionamento correto perante a suíte de testes, clareza da arquitetura (AST, visitantes, tabela de símbolos), qualidade do código e da documentação, e reflexão sobre o processo (dificuldades e como foram superadas).
Referências
- Aho et al. (2006). Compilers: Principles, Techniques, and Tools.
- Cooper & Torczon (2011). Engineering a Compiler.
Materiais da aula
Última atualização: 08/03/2026