Julgue o item a seguir, a respeito de reúso de software e de...
Julgue o item a seguir, a respeito de reúso de software e de API (application programming interface).
No nível de abstração, o reúso ocorre por aproveitamento de conhecimentos, como padrões de projeto, arquiteturas e outras práticas bem-sucedidas, que orientam o desenvolvimento de novos softwares.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta para a questão é: C - certo.
Vamos compreender o tema central da questão, que aborda o reúso de software e a API (Application Programming Interface). Esses conceitos são fundamentais em engenharia de software, pois promovem eficiência, economia de recursos e manutenção de qualidade no desenvolvimento de sistemas.
No nível de abstração, o reúso de software refere-se ao processo de utilizar **conhecimentos e práticas pré-existentes** para facilitar o desenvolvimento de novas soluções. Isso inclui o uso de padrões de projeto (design patterns), que são soluções comprovadas para problemas comuns de design; arquiteturas de software, que estruturam a construção do sistema; e outras práticas bem-sucedidas que guiam o desenvolvimento.
Esses conceitos são abordados em várias literaturas sobre engenharia de software, como o livro "Design Patterns: Elements of Reusable Object-Oriented Software" dos autores Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides, que são conhecidos como a "Gang of Four".
Justificativa para a alternativa correta: A afirmação da questão está correta, pois descreve adequadamente a ideia de reúso no nível de abstração, onde se aproveitam conhecimentos adquiridos, como padrões e arquiteturas, para guiar o desenvolvimento de novas soluções. Essa abordagem é conhecida por aumentar a produtividade dos desenvolvedores e garantir uma melhor qualidade do software, reduzindo a reinvenção da roda.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
CERTO
No nível de abstração, o reúso no desenvolvimento de software ocorre ao aproveitar conhecimentos, modelos e práticas previamente consolidados, com o objetivo de aumentar a eficiência, reduzir esforços redundantes e melhorar a qualidade dos sistemas. Isso envolve o uso de padrões de projeto, arquiteturas, frameworks e metodologias bem-sucedidas.
No nível de abstração, o reúso de software não se limita apenas a copiar e colar trechos de código ou reutilizar bibliotecas inteiras. Ele também pode ocorrer de forma conceitual, por meio da aplicação de conhecimentos, boas práticas e soluções já testadas.
Nível: Código-fonte
- O que se reutiliza: Funções, classes, bibliotecas
- Exemplo: Uso de uma biblioteca de autenticação
Nível: Arquitetural
- O que se reutiliza: Estrutura e organização do sistema
- Exemplo: Adotar MVC em sistemas diferentes
Nível: Abstração/conceitual
- O que se reutiliza: Ideias, padrões, práticas
- Exemplo: Aplicar o padrão Singleton ou Observer
O item está correto ao descrever que o reúso de software pode ocorrer em níveis mais abstratos, como no reaproveitamento de conhecimentos, incluindo:
- Padrões de projeto (design patterns) — como Singleton, Factory, Observer etc.
- Arquiteturas de software reutilizáveis — como MVC, Microserviços, Camadas, Event-Driven.
- Práticas bem-sucedidas — como convenções de codificação, estratégias de modularização, separação de responsabilidades etc.
Enquanto o reúso tradicional pode se referir ao reaproveitamento de código-fonte, componentes, bibliotecas ou serviços, o reúso em nível abstrato se refere a:
- Conhecimento reutilizável que não é necessariamente implementado diretamente como código,
- Mas que serve de modelo, guia ou estrutura para novos desenvolvimentos.
Esse tipo de reúso:
- Aumenta a produtividade,
- Melhora a qualidade do software,
- Ajuda a manter consistência e boas práticas entre projetos diferentes.
By Futuro DEV Estável.
Certo. O reúso de software ocorre em diferentes níveis. No nível de abstração, ele não envolve o reúso de código-fonte, mas sim de conhecimento e soluções consolidadas, como arquiteturas (ex: MVC) e padrões de projeto (Design Patterns), que orientam o desenvolvimento de forma eficaz.
Siga-me @rexconcurseiro
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo