Diante da crescente personalização de softwares, desenvolvedores criaram um sistema onde um programa lê…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Reconhecer o conceito de metaprogramação como uma forma de generalização na construção de programas, permitindo que algoritmos sejam entrada ou saída para outros algoritmos.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Diante da crescente personalização de softwares, desenvolvedores criaram um sistema onde um programa lê descrições de algoritmos escritas em um arquivo de texto e produz automaticamente o código-fonte correspondente em diferentes linguagens. Esse mecanismo permite estender o gerador com novas regras e suporta a criação de estruturas de controle, funções e classes sem necessidade de escrever manualmente cada versão do programa. Analise o texto e identifique qual prática descrita exemplifica metaprogramação como forma de generalização na construção de programas?
- A) Configuração de parâmetros em arquivo externo sem alterar o programa
- B) Criação de interface de usuário com elementos visuais
- C) Execução de testes unitários por ferramenta automatizada
- D) Geração de código a partir de definições de algoritmos por um script
- E) Uso de biblioteca estatística para cálculos específicos
✅ Resposta correta: alternativa D
Resolução passo a passo
- O texto descreve um programa que lê descrições de algoritmos em arquivo de texto e gera automaticamente código-fonte em várias linguagens. Isso é metaprogramação: um programa que produz ou manipula outros programas (código) como dados.
- A generalização aparece porque o gerador pode ser estendido com novas regras e produz estruturas de controle, funções e classes sem que cada versão seja escrita à mão. Uma única definição abstrata serve para muitas implementações concretas.
- A alternativa D descreve exatamente isso: geração de código a partir de definições de algoritmos por um script. Esse é o caso central de metaprogramação descrito no enunciado.
- Por que as outras estão erradas:
- A) Configurar parâmetros em arquivo externo ajusta o comportamento de um programa, mas não gera código novo.
- B) Criar interface visual é desenvolvimento de interface, sem relação com produzir código.
- C) Executar testes unitários automatizados verifica programas, mas não os cria a partir de descrições.
- E) Usar biblioteca estatística é apenas reutilização de funções de cálculo, sem metaprogramação.
- Conclusão: a letra correta é D, que coincide com o gabarito oficial.
💡 Dica: Identifique a prática que exemplifica metaprogramação na descrição dada.
Alternativa por alternativa
O aluno pode confundir qualquer forma de flexibilidade ou parametrização com metaprogramação, achando que ajustar um programa por arquivo externo já generaliza a construção de programas.
Por que engana: Confundir metaprogramação com outras práticas como configuração ou uso de bibliotecas externas.
O aluno associa generalização a elementos visuais ou a interfaces amigáveis, ignorando que o texto trata de produção automática de código.
O aluno pensa que automatizar qualquer tarefa de desenvolvimento, como testes, já é metaprogramação, sem perceber que o texto fala em criar código-fonte.
Essa prática usa um programa que recebe algoritmos como entrada e gera código, caracterizando metaprogramação.
O aluno considera que reutilizar bibliotecas prontas é generalização na construção de programas, sem distinguir reuso de funções de geração de código.
Raio-X da questão
metaprogramação e generalização
avaliacao
conceito de algoritmo · programação básica
Estude o conceito de metaprogramação e geração automática de código.
Confundir metaprogramação com outras práticas como configuração ou uso de bibliotecas externas.
ciencia_tecnologia
pensamento_critico
cientifico
Questões parecidas com resolução
- Em um projeto de monitoramento de rios, uma boia computacional organiza leituras de sensores antes de enviá-las por…
- Uma biblioteca escolar recebeu caixas de livros doados para uma feira de troca. Para registrar os exemplares, a equipe…
- Um centro cultural público oferece inscrições on-line para atividades com critérios variados. Na oficina de teatro…
- Uma escola está testando dois protótipos de aplicativo para que estudantes consultem mudanças de sala, horários e…
- Uma secretaria municipal de educação está digitalizando pedidos de transporte escolar e de atendimento em contraturno…
- — O cartaz não pode sair duas vezes, pois a feira começa em uma hora — alertou a coordenadora do centro cultural. No…
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
