Questões de Concurso
Sobre padrões de projeto (design patterns) em arquitetura de software
Foram encontradas 551 questões
De acordo com Gamma, padrões de projeto são soluções reutilizáveis de software orientado a objetos. Considere as três afirmativas a seguir e depois informe a alternativa correta.
I - Padrões de projeto de criação são aqueles que abstraem o processo de instanciação de objetos.
II - Padrões de projeto estruturais se preocupam com a forma como classes e objetos são compostos para formar estruturas maiores.
III - Padrões de projeto comportamentais se preocupam com algoritmos e a atribuição de responsabilidades entre objetos.
O Governo Federal, por meio do Banco Central, está desenvolvendo um sistema que possibilitará a todos os Bancos do país o acesso a algumas de suas informações. Um requisito fundamental desse sistema é que a taxa de juros utilizada em todas as transações de todos os Bancos seja a mesma e haja um único acesso a essa informação. Além disso, esse sistema deve poder ser executado em diferentes plataformas, como computadores e diversos dispositivos móveis. Para garantir que a taxa de juros seja única e para evitar a necessidade de criar diferentes soluções para cada plataforma, a empresa desenvolvedora decidiu adotar padrões de projeto. O primeiro padrão deverá garantir uma única instanciação para a classe “Taxa de juros”; e o segundo padrão deverá definir uma família de componentes para cada plataforma e uma implementação que os instancie de acordo com a plataforma na qual a aplicação estará sendo executada.
Os padrões de projeto a serem adotados nessa implementação são, respectivamente:
Considerando os conceitos de análise e projeto orientados a objetos, julgue o item subsecutivo.
De acordo com os padrões GRASP, a função do low coupling
é garantir que o acoplamento entre classes ou entidades
permaneça fraco, de forma a permitir a maior reutilização
possível.
Julgue o item seguinte, a respeito de arquitetura de software.
No desenvolvimento de um sistema que envolva a aplicação de
padrões de projeto, a utilização dos padrões factory, builder ou
prototype é recomendada caso se pretenda a parametrização do
sistema por meio da composição de objetos, na qual um objeto
é responsável por conhecer a classe dos objetos-produto e
transformá-la em um parâmetro do sistema.
Considere as afirmativas abaixo a respeito dos padrões de projeto Proxy e Template Method.
I O padrão Proxy pode ser usado para controlar os direitos de acesso a outro objeto.
II O padrão Proxy pode ser usado para acessar um objeto localizado em um ambiente remoto.
III O padrão Template Method define métodos templates para a criação de objetos que seguem uma determinada regra.
IV O padrão Template Method permite definir uma família de algoritmos que podem ser substituídos dinamicamente.
Estão corretas as afirmativas
Considere as seguintes afirmativas a respeito dos padrões de projeto Facade (Fachada) e Composite.
I Uma das consequências negativas do padrão Facade é que ele aumenta o acoplamento entre os subsistemas no qual é aplicado.
II O padrão Facade define uma interface única para acesso a um subsistema, tornando mais fácil a utilização de seus serviços.
III No padrão Composite, objetos que representam composições e objetivos primitivos são tratados (chamados) de forma idêntica pelo cliente.
IV O padrão Composite permite variar dinamicamente a quantidade de objetos primitivos, mas não de objetos composite.
Estão corretas as afirmativas
Considere as afirmativas presentes no quadro abaixo a respeito dos padrões de projeto Adapter e Observer:
I Uma das implementações do padrão Adapter é realizada através do uso do mecanismo de herança múltipla.
II O padrão Observer é usado para permitir que mudanças no estado de vários objetos sejam repassadas para objetos observadores interessados.
III O padrão Adapter permite que o cliente troque os objetos Adapter e Adaptee dinamicamente.
IV O padrão Observer define a quantidade de objetos observadores (Observer) de um dado assunto (Subject) em tempo de inicialização do programa.
Estão corretas as afirmativas
O padrão Layer (Camadas) é um padrão arquitetural que pode ser usado para organização dos subsistemas de um sistema de software. Considere as seguintes afirmativas a respeito do Padrão Layer (Camadas):
I O Padrão Layer permite substituição completa de qualquer uma de suas camadas.
II O Padrão Layer (Camadas) define a estruturação de um sistema em várias camadas organizadas em uma pilha, onde camadas superiores oferecem serviços para as camadas inferiores.
III O Padrão Layer pode trazer problemas de desempenho devido à necessidade de processar cada requisição ao sistema através de diferentes camadas.
IV As camadas definidas no padrão Layer são: Interface do usuário (GUI), Autenticação/Autorização, Negócio (Business) e Dados (Data).
Estão corretas as afirmativas
Para responder a questão considere a definição abaixo.
Padrão de projeto é uma técnica que permite reutilizar em seu projeto soluções
utilizadas anteriormente em outros sistemas.
Considere as seguintes afirmativas a respeito do padrão Singleton.
I O padrão Singleton pode ser usado para determinar uma quantidade fixa de instâncias de uma classe que podem ser criadas em uma aplicação.
II A classe que implementa o padrão Singleton deve manter público seus construtores.
III A implementação comum do padrão Singleton funciona em ambientes multi-threads.
IV O padrão Singleton é implementado através de atributos e métodos estáticos na classe onde é aplicado.
Estão corretas as afirmativas
Para responder a questão considere a definição abaixo.
Padrão de projeto é uma técnica que permite reutilizar em seu projeto soluções
utilizadas anteriormente em outros sistemas.
Considere as afirmações a seguir, acerca dos padrões de projeto Template Method, Adapter
e Facade.
I O padrão Template Method faz uso do mecanismo de delegação para implementar um algoritmo.
II O padrão Template Method permite variar partes de um algoritmo e é implementado por meio de extensão de classes abstratas.
III O padrão Facade contribui para o aumento do acoplamento entre subsistemas.
IV O padrão Adapter pode ser implementado através de herança múltipla.
Estão corretas as afirmações
Para responder a questão considere a definição abaixo.
Padrão de projeto é uma técnica que permite reutilizar em seu projeto soluções
utilizadas anteriormente em outros sistemas.
Considerando o padrão de projeto Estratégia (Strategy), é correto afirmar que