Questões de Concurso
Comentadas sobre padrões de projeto (design patterns) em arquitetura de software
Foram encontradas 574 questões
Está correto o que se afirma em
Julgue o item a seguir, a respeito de padrões de projetos.
O padrão de projeto estrutural bridge fornece um objeto
substituto, que faz referência a outro objeto.
Julgue o item a seguir, a respeito de padrões de projetos.
No padrão GRASP, a alta coesão (high cohesion) serve para
mensurar quão fortemente uma classe está conectada a outras
classes
Julgue o item a seguir, a respeito de padrões de projetos.
O isolamento dos códigos de construção e representação é um
dos objetivos do padrão builder.
Julgue o item a seguir, a respeito de padrões de projetos.
O padrão command tem como definição passar uma requisição
entre uma lista ou objetos encadeados para a execução de uma
ação ou o acionamento de um evento em um momento
posterior.
O padrão de projeto _________ assegura que uma classe gere apenas uma instância e forneça acesso a essa instância.
O padrão de projeto _________ organiza objetos em estruturas de árvore para representar hierarquias todo-parte. Esse padrão permite que clientes tratem objetos individuais e coleções de objetos de maneira uniforme.
O padrão de projeto _________ acrescenta responsabilidades adicionais a um objeto dinamicamente. Esse padrão fornece uma alternativa flexível para a extensão de funcionalidade em relação à solução por meio de herança.
Suponha que exista uma interface ITraduzFrase que define o método imprimeFrase(). Existem, também, as classes InglesTraduzFrase, EspanholTraduzFrase e AlemaoTraduzFrase que estendem a interface ITraduzFrase e utilizam o método imprimeFrase(). Um Analista utilizou um design pattern que cria objetos de forma dinâmica sem conhecer a classe de implementação. A classe FrasePadrao implementa esse padrão de forma que, de acordo com o idioma desejado, retorna um objeto do tipo ITraduzFrase. O objetivo é que, sendo fornecido o idioma, a frase será nele impressa, em inglês, espanhol ou alemão.
Considerando o exemplo e sabendo que a definição do padrão é "Define uma interface para criar um objeto, mas permite às classes decidirem qual classe instanciar. Este padrão permite a uma classe deferir a instanciação para subclasses.", o nome do padrão usado pelo Analista é
Considere o seguinte cenário:
Em um sistema em desenvolvimento, existe a necessidade de que quando um determinado objeto sofra alguma alteração, um outro grupo de objetos seja notificados de forma a realizarem o processamento adequado. Esse grupo de objetos interessado na ação é dinâmico, sendo necessário que seja feita a solicitação de inclusão ou remoção do grupo.
Baseado nesse cenário, qual padrão de projeto GoF deverá ser utilizado?
Observe as afirmativas abaixo:
I. Com frequência, equipes de desenvolvimento de software escrevem classes que proveem funcionalidades similares às de outras classes já existentes. Esse padrão se aplica a qualquer contexto em que se deseja implementar funcionalidades já implementadas em outra classe, mas com interface diferente da classe já implementada. Esse padrão define uma nova classe de maneira que ela contenha uma instância da classe velha como um atributo privado, e implemente cada método da nova classe usando métodos da classe antiga.
II. Fornece uma interface unificada para um conjunto de interfaces em um subsistema. Define
uma interface de nível mais alto que torna o subsistema mais fácil de ser usado.
III. Define o esqueleto de um algoritmo em uma operação, postergando alguns passos para as subclasses. Permite que subclasses redefinam certos passos de um algoritmo sem mudar a estrutura do mesmo. Esse padrão pode ser usado para implementar as partes invariantes do algoritmo uma só vez e deixar para as subclasses a implementação do comportamento que pode variar.
IV. Evita o acoplamento do remetente de uma solicitação ao seu receptor ao dar a mais de um
objeto a oportunidade de tratar a solicitação. Encadeia os objetos receptores, passando a
solicitação ao longo da cadeia até que um objeto a trate. Esse padrão é utilizado quando
mais de um objeto pode tratar uma solicitação e o objeto que a tratará não é conhecido a
priori. O objeto que trata a solicitação é escolhido automaticamente.
V. Você começou a trabalhar em um projeto que utiliza tecnologia Java RMI. Nesse projeto, é implementado um padrão de projeto que provê um ponto através do qual um objeto controla o acesso a outro. No projeto em questão, um objeto remoto que contém a implementação real é acessado através de um outro objeto local, de forma que o objeto local controla o acesso ao remoto. Para isso, ambos possuem a mesma interface.
As afirmativas acima descrevem, respectivamente, os seguintes padrões de projeto: