Em levantamento interno recente, 85% dos desenvolvedores de uma empresa de software relatou gasto excessivo de…
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
Em levantamento interno recente, 85% dos desenvolvedores de uma empresa de software relatou gasto excessivo de horas adaptando manualmente scripts de processamento de dados para cada novo cliente. Para resolver isso, a equipe criou um gerador de código: um programa que recebe como entrada um arquivo de configuração descrevendo etapas de extração, transformação e carga, e produz automaticamente scripts prontos para diferentes ambientes e linguagens. Com isso, reduziu-se em 60% o tempo de entrega de cada solução e eliminou-se a necessidade de duplicar esforços na codificação manual de cada pipeline. Analise o texto-base e identifique qual prática descrita exemplifica o conceito de metaprogramação como generalização na construção de programas.
- A) Criação de funções genéricas que aceitam parâmetros para diferentes cálculos
- B) Uso de bibliotecas externas prontas para ler e gravar arquivos
- C) Uso de um gerador de código que transforma especificações em programas finais
- D) Desenvolvimento de scripts que executam sequências de comandos fixos para cada formato
- E) Emprego de condicionais para tratar casos distintos de processamento de dados
✅ Resposta correta: alternativa C
Resolução passo a passo
- O texto descreve um gerador de código que recebe um arquivo de configuração com etapas de extração, transformação e carga e produz automaticamente scripts prontos. Isso é um programa que escreve outros programas a partir de uma especificação, que é o núcleo da metaprogramação.
- Metaprogramação como generalização significa escrever um programa que opera sobre outros programas, generalizando o trabalho repetitivo de codificação. No texto, a equipe deixou de codificar cada pipeline à mão e passou a gerar os scripts, o que elimina a duplicação de esforço, como o enunciado afirma.
- A alternativa C descreve exatamente essa prática: um gerador de código que transforma especificações em programas finais. Por isso, ela é a correta, e coincide com o gabarito oficial.
- Por que as outras estão erradas: A) funções genéricas com parâmetros são generalização de código em tempo de execução, não geração de programas. B) bibliotecas prontas reutilizam código existente, mas não produzem novos programas. D) scripts com comandos fixos repetem a mesma sequência, sem generalização nem geração. E) condicionais tratam casos dentro de um único programa, sem gerar código.
💡 Dica: Identifique a prática que exemplifica metaprogramação na descrição.
Alternativa por alternativa
O aluno confunde generalização com funções parametrizadas, que reutilizam código dentro do mesmo programa, sem criar novos programas a partir de especificações.
Por que engana: Confundir uso de bibliotecas ou funções genéricas com metaprogramação que gera código automaticamente.
O aluno associa reutilização de código a bibliotecas externas, sem perceber que a metaprogramação envolve programas que produzem outros programas.
Esse gerador trata algoritmos como entrada e produz programas, caracterizando metaprogramação.
O aluno entende que repetir sequências de comandos para cada formato já é generalização, quando na verdade isso é duplicação de esforço que o texto diz ter sido eliminada.
O aluno acredita que tratar casos diferentes com condicionais equivale a generalizar a construção do programa, sem notar que não há geração de código no texto.
Raio-X da questão
metaprogramação e generalização
diagnostico
programacao basica · conceito de funcao
Estude o conceito de metaprogramação e geração automática de código.
Confundir uso de bibliotecas ou funções genéricas com metaprogramação que gera código automaticamente.
ciencia_tecnologia
pensamento_critico
cientifico
Questões parecidas com resolução
- Durante uma campanha de arrecadação, uma escola receberá alimentos e produtos de higiene para montar cestas destinadas a…
- Em um exercício de preparação para períodos de chuva intensa, uma central municipal de Defesa Civil precisa localizar…
- Em ações de fiscalização ambiental no Brasil, imagens de satélite podem ser comparadas em diferentes datas para indicar…
- Uma família criou um programa para organizar as compras do mês. O programa recebe os preços, soma os produtos e…
- — Sem conexão estável no rio, o alerta precisa aparecer no próprio tablet — afirmou a técnica que acompanha sons de aves…
- Falhas em formulários digitais de serviços públicos levaram um setor de tecnologia a testar cinco programas de análise…
🔎 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
