Sobes.tech
Middle+

O que é baixa coesão e alta coesão (baixo acoplamento, alta coesão)?

sobes.tech IA

Resposta da IA

Baixa coesão (baixo acoplamento) e alta coesão (alta coesão) são princípios de design destinados a criar código que seja fácil de manter, expandir e testar.

Baixo acoplamento (Low Coupling)

  • Significa que os componentes (classes, módulos) dependem minimamente uns dos outros. As mudanças em um componente têm um impacto mínimo nos outros.
  • Características do baixo acoplamento:
    • Os componentes interagem através de interfaces claramente definidas.
    • Minimiza-se o acesso direto aos detalhes internos de outros componentes.
    • Mudanças na implementação de um componente não requerem mudanças em outros.
  • Vantagens:
    • Facilita o teste de componentes individuais.
    • O código torna-se mais flexível e mais fácil de expandir.
    • Reduz o risco de erros ao fazer alterações.

Alta coesão (High Cohesion)

  • Significa que os elementos dentro de um componente estão logicamente relacionados entre si e realizam uma tarefa claramente definida. Um componente com alta coesão está focado numa única responsabilidade.
  • Características da alta coesão:
    • Todos os métodos da classe pertencem a uma mesma área funcional.
    • A classe não contém funcionalidades não relacionadas.
    • A lógica relacionada a uma tarefa está concentrada num só lugar.
  • Vantagens:
    • O código torna-se mais compreensível e fácil de ler.
    • Facilita a localização e correção de erros.
    • O componente torna-se mais reutilizável.

No geral, deve-se aspirar a baixo acoplamento entre componentes e alta coesão dentro de cada componente.