Sobre os padrões de projeto para distribuição de responsabilidades, GRASP (General Responsability Assignment Software Patterns), analise as afirmativas.
- Polimorfismo (Polymorphism) – Problema: Como tratar alternativas com base em tipo? Solução: Quando alternativas ou comportamentos relacionados variam segundo o tipo (classe), atribua a responsabilidade pelo comportamento aos tipos para os quais o comportamento varia, usando operações polimórficas.
- Especialista de Informação (Information Expert) – Problema: qual é o princípio geral de atribuição de responsabilidade a objetos? Solução: Atribua a responsabilidade ao especialista na informação, à classe que tem a informação necessária para satisfazer a responsabilidade.
- Controlador (Controller) – Problema: qual é o primeiro objeto, além da camada de IU (interface de usuário), que recebe e coordena uma operação do sistema? Solução: Atribua a responsabilidade a uma classe que represente uma das seguintes escolhas: 1) o sistema global, um objeto raiz ou um dispositivo dentro do qual o software está sendo processado; 2) um cenário de um caso de uso dentro do qual ocorre o evento do sistema.
Está correto o que se afirma em