— Percebi que escrever manualmente rotas e controladores para cada novo recurso torna o desenvolvimento lento…
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
— Percebi que escrever manualmente rotas e controladores para cada novo recurso torna o desenvolvimento lento, comentou Ricardo. Em resposta, Lina criou uma ferramenta que lê um arquivo de configuracao com definicoes de recursos (nome, campos e operacoes) e gera automaticamente o codigo dos endpoints correspondentes. O time integrou essa ferramenta ao fluxo de trabalho: sempre que um novo recurso e definido, seu algoritmo transforma essa especificacao em funcoes prontas para compilacao, reduzindo repeticao e erros. Analise o texto-base e identifique a prática que exemplifica metaprogramacao como generalizacao na construcao de programas.
- A) Leitura de um arquivo de configuracao e geracao automatica de codigo dos endpoints
- B) Aplicacao de teste unitario para validar funcoes de cada modulo
- C) Depuracao de codigo com uso de breakpoint em ambiente de desenvolvimento
- D) Criacao manual de rotas e controladores no codigo-fonte para cada recurso
- E) Uso de biblioteca de funcoes predefinidas para operacoes matematicas
✅ Resposta correta: alternativa A
Resolução passo a passo
- O texto descreve uma ferramenta que lê um arquivo de configuração com a definição de recursos (nome, campos e operações) e gera automaticamente o código dos endpoints. Isso é metaprogramação: um programa que produz ou manipula outros programas. Passo 2: Na metaprogramação como generalização, escreve-se uma regra geral (um gerador) que serve para muitos casos semelhantes, em vez de codificar cada caso à mão. Aqui, a especificação de cada novo recurso vira código pronto para compilação, reduzindo repetição e erros, exatamente o que o texto destaca. Passo 3: A alternativa A é a correta, e o gabarito oficial está certo. Passo 4: Por que as outras estão erradas: B trata de testes, que validam código mas não geram código; C trata de depuração, que localiza falhas e não produz programas; D é justamente o oposto do descrito, pois é a escrita manual repetitiva que o time quis eliminar; E usa funções prontas de biblioteca, o que é reutilização, não geração de código a partir de uma especificação.
💡 Dica: Identifique a prática que automatiza a geração de código a partir de especificações.
Alternativa por alternativa
Esta pratica utiliza um algoritmo para gerar codigo a partir de especificacoes, caracterizando metaprogramacao.
O aluno pode associar automação de qualidade de software a metaprogramação, achando que qualquer prática automatizada no desenvolvimento a caracteriza. Testes unitários verificam código existente, sem gerá-lo.
O aluno pode pensar que ferramentas de apoio ao programador, como depuradores, já são metaprogramação, por manipularem o código em tempo de desenvolvimento. A depuração apenas examina a execução de um programa, sem gerar outros programas.
O aluno pode ter lido apenas a frase sobre rotas e controladores escritos manualmente e tomado essa prática como exemplo. O texto, porém, descreve justamente a substituição dessa escrita manual por geração automática.
Por que engana: Confundir metaprogramação com testes ou depuração, não reconhecendo a geração automática de código.
O aluno pode confundir reutilização de código de bibliotecas com metaprogramação, achando que usar funções prontas já generaliza a construção do programa. Bibliotecas fornecem funções prontas, mas não geram código a partir de especificações.
Raio-X da questão
metaprogramação e automação de código
avaliacao
conceito de funções e módulos · automação de tarefas em programação
Estude o conceito de metaprogramação e geração automática de código.
Confundir metaprogramação com testes ou depuração, não reconhecendo a geração automática de código.
ciencia_tecnologia
pensamento_critico
cientifico
Questões parecidas com resolução
- Dados ilustrativos: 68% das empresas de software empregam geradores automáticos de código para acelerar a construção de…
- Em levantamento interno recente, 85% dos desenvolvedores de uma empresa de software relatou gasto excessivo de horas…
- Vislumbres do backend de uma plataforma de desenvolvimento revelam uma equipe que adotou o AutoDev, uma ferramenta capaz…
- Narrativa em primeira pessoa: trabalhei em um projeto interno de automação de APIs que visava reduzir o tempo de…
- Por que certas ferramentas de desenvolvimento conseguem gerar trechos de código automaticamente, adaptando-se a…
- Linhas de código percorriam as telas dos participantes durante uma maratona de desenvolvimento, enquanto vozes trocavam…
🔎 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
