Um algoritmo de processamento de imagens depende de uma biblioteca externa sem controle de versão. Qual…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Explorar e construir a solução de problemas por meio da reutilização de partes de soluções existentes.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Um algoritmo de processamento de imagens depende de uma biblioteca externa sem controle de versão. Qual estratégia reduz o risco ao reutilizar esse algoritmo em projetos diferentes?
- A) Classificar a lógica de geração de relatórios como secundária.
- B) Criar múltiplas cópias do código de ordenação em outros projetos.
- C) Transformar a função de ordenação em parte de um banco de dados.
- D) Manter o código de ordenação dentro da geração de relatórios.
- E) Adotar versionamento semântico para a dependência e criar uma camada adaptadora/abstração entre o algoritmo e a biblioteca.
✅ Resposta correta: alternativa E
Resolução passo a passo
- O problema é que o algoritmo depende de uma biblioteca externa sem controle de versão, então uma atualização dessa biblioteca pode quebrar o algoritmo quando ele for reutilizado em outros projetos. Passo 2: Para reduzir esse risco, é preciso controlar a dependência (fixando e documentando a versão, com versionamento semântico, que indica quando há mudanças incompatíveis) e isolar a biblioteca atrás de uma camada adaptadora ou abstração, de modo que mudanças externas afetem apenas um ponto do código. Passo 3: A alternativa E combina essas duas medidas, por isso é a correta, e coincide com o gabarito oficial. Passo 4: A alternativa A está errada porque classificar a geração de relatórios como secundária não altera a dependência externa nem o risco de reutilização. Passo 5: A alternativa B está errada porque copiar o código de ordenação em vários projetos multiplica a manutenção e não controla a versão da biblioteca. Passo 6: A alternativa C está errada porque transformar a função de ordenação em parte de um banco de dados é uma mudança de arquitetura que não trata a dependência externa. Passo 7: A alternativa D está errada porque manter a ordenação dentro da geração de relatórios aumenta o acoplamento entre as partes do sistema, em vez de reduzir o risco.
💡 Dica: Considere as práticas de controle de versão e encapsulamento.
Alternativa por alternativa
Acredita que hierarquizar partes do sistema, dizendo que a geração de relatórios é secundária, resolve o risco técnico da dependência. Confunde importância funcional de um módulo com controle de risco de reutilização.
Acredita que duplicar o código em vários projetos isola o problema, porque cada cópia ficaria independente. Não percebe que isso espalha a dependência sem versão e aumenta o trabalho de manutenção.
Por que engana: O aluno pode confundir a necessidade de cópias do código com a implementação de um controle de versão adequado, levando a redundâncias desnecessárias.
Associa a palavra ordenação a dados armazenados e acredita que mover a função para um banco de dados resolveria a dependência. Lê o enunciado de forma superficial e ignora que a questão trata da biblioteca externa.
Acredita que manter a ordenação junto à geração de relatórios organiza o código e facilita a reutilização. Não percebe que isso aumenta o acoplamento e torna a dependência externa mais difícil de isolar.
Conter a versão da biblioteca evita que quebras por mudanças impactem o algoritmo; uma camada adaptadora isola a dependência, permitindo trocar ou atualizar a biblioteca sem modificar a lógica principal.
Raio-X da questão
controle de versão
avaliacao
controle de versão · abstração em programação
Revisar estratégias de controle de versão em projetos de software.
O aluno pode confundir a necessidade de cópias do código com a implementação de um controle de versão adequado, levando a redundâncias desnecessárias.
ciencia_tecnologia
pensamento_critico
cientifico
Questões parecidas com resolução
- Em um projeto colaborativo de programação, como o reúso de algoritmos pode ser implementado?
- Marina encontra um algoritmo de filtragem em um repositório público e quer usar trechos no seu código. Qual conduta…
- Ao publicar um algoritmo como biblioteca para terceiros, qual aspecto da licença influencia diretamente a possibilidade…
- Na construção de um algoritmo, o que deve ser feito para reutilizar um componente já existente?
- Uma cooperativa brasileira de distribuição pretende informatizar o controle de seu estoque. Durante o planejamento, a…
- Em um projeto de software, como você aplicaria a técnica de reúso para reduzir o tempo de desenvolvimento?
🔎 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
