Questões de Orientação a Objetos (Engenharia de Software)

Limpar Busca

Os princípios GRASP (General Responsibility Assignment Software Patterns) são padrões de design de software orientados a objetos que servem como diretrizes para a atribuição de responsabilidades a classes e objetos.
Dentre os princípios GRASP podemos identificar os seguintes:

  • A Baixo Acoplamento (Low Coupling, Proteção contra Variações (Protected Variations) e Responsabilidade única (Single Responsibility).
  • B Alta Coesão (High Cohesion), Indireção (Indirection) e Substituição de Liskov (Liskov Substitution).
  • C Controlador (Controller), Especialista na Informação (Information Expert) e Inversão da dependência (Dependency Inversion).
  • D Controlador (Controller), Criador (Creator) e Fabricação Pura/Pura Fabricação (Pure Fabrication).
  • E Baixa Coesão (Low Cohesion), Indireção (Indirection) e Polimorfismo (Polymorphism).

Leia a descrição a seguir.

Trata-se de um padrão que fornece uma interface para criar famílias de objetos relacionados ou dependentes, sem especificar suas classes concretas, seja porque estas ainda são desconhecidas ou para permitir maior escalabilidade no futuro.

O padrão de projeto descrito é o:

  • A Builder.
  • B Singleton.
  • C Abstract Factory.
  • D Decorator.
  • E Template Method.

O acrônimo SOLID refere-se a um conjunto de cinco princípios de projeto de sistemas que visam tornar o código mais compreensível, flexível e fácil de manter. Esses princípios são fundamentais para a programação orientada a objetos e ajudam os desenvolvedores a evitar problemas comuns, como a rigidez e a complexidade excessiva. Um dos princípios do acrônimo SOLID é

  • A Inversão de Controle.
  • B Programação Estruturada.
  • C Modularidade.
  • D Responsabilidade Única.

Os princípios da orientação a objetos são importantes para a análise e projeto de sistemas, permitindo uma melhor organização e reutilização do código. Entre os princípios, destacam-se a abstração, encapsulamento, herança e polimorfismo. Marque a opção que define, corretamente, um desses princípios.

  • A O encapsulamento permite que diferentes classes compartilhem a mesma interface, mas implementem comportamentos distintos.
  • B A herança permite que uma classe derive características e comportamentos de outra classe, promovendo a reutilização de código.
  • C A abstração é o processo de ocultar a complexidade do sistema, permitindo que o usuário interaja apenas com a interface.
  • D O polimorfismo consiste na habilidade de um objeto em apresentar diferentes formas, sendo um conceito distinto da herança.

Os padrões GRASP descrevem princípios fundamentais de design de objetos (OD) e atribuição de responsabilidades, que ajudam a entender a essência de OD. A atribuição de responsabilidades ocorre durante a criação dos diagramas de

  • A caso de uso.
  • B interação.
  • C pacotes.
  • D objetos.
  • E dados.