- Paradigmas de ProgramaçãoOrientação a ObjetosAnálise e Projeto Orientado a Objetos
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Classes e Objetos
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Encapsulamento
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Polimorfismo
A coluna da esquerda apresenta questões de projeto de software orientado a objetos e a da direita, alternativas de soluções para as questões. Numere a coluna da direita de acordo com a da esquerda.
1 - Quem deve criar instâncias de uma classe?
2 - Qual o princípio geral de distribuição de responsabilidades a objetos?
3 - Como reduzir o impacto de modificações?
4 - Qual é o primeiro objeto, além da camada de interface com usuário (IU), que recebe e coordena uma operação do sistema?
5 - Como manter objetos focados, inteligíveis e gerenciáveis?
6 - Como tratar alternativas com base no tipo?
( ) Atribua a responsabilidade à classe que tenha informações necessárias para satisfazer a responsabilidade.
( ) Atribua a responsabilidade pelo comportamento aos tipos para os quais o comportamento varia, usando operações polimórficas.
( ) Atribua a responsabilidade de modo que a coesão permaneça alta.
( ) Atribua à Classe B a responsabilidade de criar uma instância da Classe A se uma das seguintes afirmativas for verdadeira: (B contém A; B agrega A de forma composta; B registra A; B usa A de maneira muito próxima; B contém os dados iniciais de A).
( ) Atribua responsabilidades de modo que o acoplamento permaneça baixo.
( ) Atribua responsabilidade a um objeto que represente todo o “sistema”, um “objeto raiz”, um dispositivo dentro do qual o software está sendo executado, ou um subsistema importante.
Assinale a sequência correta.