Prévia do material em texto
High Cohesion Padrões GRASP Alta coesão na prática ● A classe tem responsabilidades moderadas em uma área funcional e colabora com outras classes para realizar tarefas ● Tarefas mais complexas são delegadas a objetos associados Benefícios ● Clareza e facilidade de compreensão do projeto; ● Simplificação das atividades de manutenção; ● Favorecimento indireto do baixo acoplamento; ● Facilidade de reutilização, graças à classe ser muito específica. • Problema do Padrão High Cohesion: ● Como manter a complexidade sob controle? ● As classes são difíceis de compreender; ● As classes são difíceis de reutilizar; ● As classes são difíceis de manter; ● As classes são frágeis, sendo afetadas por praticamente todas as modificações; Faz mais sentido que o pagamento seja parte de Venda e não do registro, como aparecia na solução anterior; Logo, Registro delega a responsabilidade a Venda, fazendo assim com que a coesão do registro fique nula.