Quando devemos aplicar a generalização de soluções em projetos de programação?
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Aplicar a estratégia de decomposição para resolver problemas complexos, dividindo esse problema em partes menores, resolvendo-as e combinando suas soluções.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Quando devemos aplicar a generalização de soluções em projetos de programação?
- A) Quando temos uma única situação a resolver
- B) Quando queremos evitar a repetição de código
- C) Quando o código já está funcionando bem
- D) Quando estamos começando um novo projeto
- E) Quando não há tempo para pensar em soluções melhores
✅ Resposta correta: alternativa B
Resolução passo a passo
- A generalização de soluções consiste em escrever um código que resolve uma classe ampla de problemas semelhantes, em vez de tratar cada caso isoladamente. Por exemplo, em vez de criar três funções quase idênticas para calcular a área de quadrados, retângulos e triângulos com regras parecidas, cria-se uma única função parametrizada.
- Resolvendo por conta própria, a finalidade principal da generalização é reduzir a repetição de código (duplicação), tornando o programa mais simples de manter, corrigir e expandir. Por isso, a situação em que ela deve ser aplicada é quando queremos evitar a repetição de código, que é a alternativa B.
- Comparando com o gabarito oficial (B), há concordância.
- Por que as outras estão erradas:
- A) Generalizar só faz sentido quando há vários casos semelhantes; com uma única situação, basta uma solução específica.
- C) Código que já funciona bem não precisa ser generalizado apenas por funcionar; a generalização é uma melhoria de estrutura, não uma condição para o funcionamento.
- D) Início de projeto não é, por si só, o momento obrigatório para generalizar; a generalização surge quando padrões repetidos aparecem.
- E) Generalizar exige planejamento e costuma economizar tempo a longo prazo, então a falta de tempo não é motivo para aplicá-la; além disso, a alternativa descreve uma atitude que não é boa prática.
💡 Dica: Pense em exemplos de quando a generalização é útil em programação.
Alternativa por alternativa
O aluno acredita que generalizar serve para resolver um caso único, confundindo generalizar com simplesmente resolver um problema pontual.
Por que engana: Achar que generalizacao deve ser aplicada apenas em casos unicos ou sem considerar a reutilizacao do codigo.
A generalização busca evitar a repetição, promovendo a reutilização e a eficiência.
O aluno entende que, se o código já funciona, não há razão para mexer nele, ignorando que a generalização visa a manutenção e a organização, não apenas o funcionamento.
O aluno associa a generalização ao início do projeto, achando que as abstrações devem ser definidas logo de saída, sem considerar que os padrões repetidos aparecem com o desenvolvimento.
O aluno interpreta a generalização como uma solução rápida ou improvisada usada por pressa, quando na verdade ela exige planejamento e reduz o trabalho futuro.
Raio-X da questão
generalização em programação
avaliacao
generalizacao em programacao · evitar repeticao de codigo
Revisar os conceitos de generalização e reutilização de código em programação.
Achar que generalizacao deve ser aplicada apenas em casos unicos ou sem considerar a reutilizacao do codigo.
pensamento_critico
abstrato
Questões parecidas com resolução
- Quando é apropriado utilizar a generalização nas soluções de problemas?
- Qual é a importância de generalizar soluções em diferentes contextos na programação?
- Qual é o benefício de generalizar soluções na programação?
- Descreva como a generalização pode ser aplicada na solução de problemas em programação e dê um exemplo.
- Como a generalização pode ser aplicada na programação?
- Qual a principal estratégia de solução de problemas que envolve a generalização em programação?
🔎 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
