Padrões de projeto são soluções reutilizáveis para problema...

Próximas questões
Com base no mesmo assunto
Q2510312 Engenharia de Software
Padrões de projeto são soluções reutilizáveis para problemas comuns de design de software, fornecendo abordagens testadas e comprovadas para estruturar e organizar o código. Os princípios SOLID 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa A está correta. Vamos entender o motivo e analisar as outras opções.

Os princípios SOLID são um conjunto de diretrizes que visam melhorar o design de software, facilitando a manutenção e a extensão de sistemas. Eles foram formulados por Robert C. Martin e são amplamente utilizados para orientar o desenvolvimento de software orientado a objetos.

Agora, vamos detalhar cada alternativa:

A - mostram como o desenvolvedor deve organizar as funções e as estruturas de dados em classes e como essas classes devem ser interconectadas.

Essa alternativa está correta porque os princípios SOLID realmente fornecem diretrizes sobre como organizar e estruturar o código em classes, abordando a interconexão entre elas. Cada princípio do SOLID desempenha um papel específico na criação de um design mais robusto e flexível:

  • S - Single Responsibility Principle (Princípio da Responsabilidade Única)
  • O - Open/Closed Principle (Princípio Aberto/Fechado)
  • L - Liskov Substitution Principle (Princípio da Substituição de Liskov)
  • I - Interface Segregation Principle (Princípio da Segregação da Interface)
  • D - Dependency Inversion Principle (Princípio da Inversão de Dependência)

B - são técnicas de design de software que envolvem a passagem das dependências de um componente a partir de uma fonte externa, em vez de criá-las internamente dentro do objeto.

Essa alternativa descreve o conceito de Injeção de Dependência, que está relacionado ao princípio de Inversão de Dependência do SOLID. No entanto, não abrange todos os princípios SOLID e, portanto, não está correta no contexto geral da questão.

C - são utilizados para implementar a comunicação entre componentes de forma desacoplada, permitindo que partes do sistema reajam a mudanças em outras partes, sem dependências diretas.

Essa descrição se refere ao padrão de design Observer (Observador), que é um dos padrões de projeto, mas não é o escopo dos princípios SOLID. Portanto, essa alternativa está incorreta.

D - fornecem uma interface unificada para acessar dados armazenados em diferentes fontes, como bancos de dados, serviços web ou sistemas de arquivos, permitindo que a lógica de negócios seja separada da lógica de persistência de dados.

Essa descrição corresponde ao padrão de design Facade ou Repository, que abstrai o acesso a diferentes fontes de dados. No entanto, isso não está relacionado aos princípios SOLID. Portanto, a alternativa está incorreta.

Espero que essa explicação tenha ajudado a esclarecer o tema dos princípios SOLID e a identificar a alternativa correta. Continue estudando e praticando para dominar cada vez mais os conceitos de desenvolvimento de software!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

A resposta correta é:

A) Padrões de projeto são soluções reutilizáveis para problemas comuns de design de software, fornecendo abordagens testadas e comprovadas para estruturar e organizar o código. Os princípios SOLID mostram como o desenvolvedor deve organizar as funções e as estruturas de dados em classes e como essas classes devem ser interconectadas.

Vamos analisar as outras opções para esclarecer:

B) são técnicas de design de software que envolvem a passagem das dependências de um componente a partir de uma fonte externa, em vez de criá-las internamente dentro do objeto.

- Esta opção descreve a injeção de dependência, que é uma técnica específica, não um padrão de projeto em si.

C) são utilizados para implementar a comunicação entre componentes de forma desacoplada, permitindo que partes do sistema reajam a mudanças em outras partes, sem dependências diretas.

- Esta opção descreve o padrão de design Observer, que é um padrão específico, não uma descrição geral de padrões de projeto.

D) fornecem uma interface unificada para acessar dados armazenados em diferentes fontes, como bancos de dados, serviços web ou sistemas de arquivos, permitindo que a lógica de negócios seja separada da lógica de persistência de dados.

- Esta opção descreve o padrão de design Repository, que é um padrão específico, não uma descrição geral de padrões de projeto.

Portanto, a opção correta é a letra A, que fornece uma descrição precisa e abrangente dos padrões de projeto em geral e menciona os princípios SOLID, que são fundamentais para um bom design de software.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo