No desenvolvimento de sistemas, no âmbito das relações inter...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: D - maior coesão e menor acoplamento.
Para entender a alternativa correta, é fundamental compreender os conceitos de coesão e acoplamento no contexto da engenharia de software:
- Coesão refere-se à medida em que os elementos de um módulo (classe, função, etc.) pertencem juntos. Um módulo altamente coeso é aquele em que as responsabilidades são bem definidas e limitadas a uma única função ou conceito. Dito de outra forma, a coesão é forte quando um módulo tem uma única, clara e bem definida responsabilidade.
- Acoplamento, por outro lado, descreve o grau de dependência entre módulos. Idealmente, um sistema deve ter um acoplamento baixo, significando que as alterações em um módulo têm impacto mínimo em outros. Módulos fracamente acoplados são independentes e comunicam-se uns com os outros através de interfaces bem definidas.
Em um sistema bem estruturado, busca-se ter módulos com alta coesão, o que significa que eles são especializados e focados em suas tarefas específicas. Isso facilita o entendimento, manutenção e reutilização do código. Ao mesmo tempo, deseja-se que os módulos tenham baixo acoplamento, promovendo uma estrutura de sistema em que mudanças em um módulo não gerem efeito dominó que cause a necessidade de alterações em outros módulos.
Portanto, a alternativa D é a correta porque afirma que um programa está bem estruturado quando há maior coesão (indicando que cada módulo tem um propósito bem definido e focado) e menor acoplamento (indicando que os módulos são independentes entre si), que são características desejáveis no design e arquitetura de sistemas de alta qualidade.
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
Ok, pessoal!
Gabarito corrigido.
Bons Estudos!
Questão grátis =D!
d-
coesão significa responsabilidades distintas, mas complementares. Uma classe "cliente"nao deve depender da classe "fatura", mas ambas fazem sentido ao trocar mensagens entre si. Acoplamento implica dependencia estrutural, o que ocorre quando um objeto incorpora elementos de outros para usa-lo em seus metodos. mudanças em 1 implica em outro(s). Uma possivel solução seria o design pattern CDI (context and dependency injection)
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo