Questões de Arquitetura de Software - Padrões de projeto (Design Patterns) para Concurso
Foram encontradas 499 questões
I implementar um padrão de criação que possibilite a separação entre a construção de um objeto complexo e sua representação de modo que esse processo de construção possa criar diferentes representações;
II implementar um padrão que evite vínculo permanente entre uma abstração e sua implementação;
III implementar um padrão que, sem violar o encapsulamento e a captura, externalize o estado interno de um objeto e permita que posteriormente ele seja restaurado a esse estado;
IV implementar um padrão que permita a variação do algoritmo independentemente dos clientes que o utilizam;
V implementar um padrão que forneça uma interface unificada para um conjunto de interfaces em um subsistema;
VI implementar um padrão que especifique os tipos de objetos a serem criados usando uma instância prototípica e crie novos objetos copiando este novo protótipo.
O padrão façade atende corretamente o que se pede em V. Esse padrão estrutural define uma interface de nível mais alto que torna o subsistema mais fácil de ser usado.
I implementar um padrão de criação que possibilite a separação entre a construção de um objeto complexo e sua representação de modo que esse processo de construção possa criar diferentes representações;
II implementar um padrão que evite vínculo permanente entre uma abstração e sua implementação;
III implementar um padrão que, sem violar o encapsulamento e a captura, externalize o estado interno de um objeto e permita que posteriormente ele seja restaurado a esse estado;
IV implementar um padrão que permita a variação do algoritmo independentemente dos clientes que o utilizam;
V implementar um padrão que forneça uma interface unificada para um conjunto de interfaces em um subsistema;
VI implementar um padrão que especifique os tipos de objetos a serem criados usando uma instância prototípica e crie novos objetos copiando este novo protótipo.
Atendendo corretamente o que se pede em IV, o padrão comportamental strategy define uma família de algoritmos, encapsula cada um deles e os torna intercambiáveis.
I implementar um padrão de criação que possibilite a separação entre a construção de um objeto complexo e sua representação de modo que esse processo de construção possa criar diferentes representações;
II implementar um padrão que evite vínculo permanente entre uma abstração e sua implementação;
III implementar um padrão que, sem violar o encapsulamento e a captura, externalize o estado interno de um objeto e permita que posteriormente ele seja restaurado a esse estado;
IV implementar um padrão que permita a variação do algoritmo independentemente dos clientes que o utilizam;
V implementar um padrão que forneça uma interface unificada para um conjunto de interfaces em um subsistema;
VI implementar um padrão que especifique os tipos de objetos a serem criados usando uma instância prototípica e crie novos objetos copiando este novo protótipo.
O padrão comportamental memento atende corretamente o que se pede em III.
Um dos princípios-chave do Domain-Driven Design é o uso de uma linguagem ubíqua com termos bem definidos, que integram o domínio do negócio e que são utilizados entre desenvolvedores especialistas de negócio.
Adapter é um padrão do tipo estrutural que lida com a interface para um objeto, ao passo que builder refere-se a como um objeto composto será criado e instanciado por uma classe.
Considere a seguinte situação: Uma grande empresa possui uma rede de representação de seus produtos constituída por escritórios de venda em diversas cidades. Cada escritório possui um conjunto de vendedores que vão até os varejistas oferecer os produtos. Varejistas podem estar em áreas populosas, como supermercados, ou em áreas remotas, como comércios de bairros rurais. Ao chegar no varejista, o vendedor utiliza um sistema fornecido pela empresa para registrar os pedidos de produtos.
Na situação descrita, o objetivo é registrar os pedidos na base de dados da central de distribuição da empresa. Porém, por problemas de comunicação com a central, o computador portátil do varejista pode não conseguir conectar com a base central para registrar os pedidos. Se isso ocorrer, o sistema deve tentar salvá-los na base de dados do escritório. Quando a base do escritório também não estiver acessível, os pedidos deverão ser salvos na base de dados local, no próprio computador portátil do vendedor.
Com relação a Design Patterns, sob a ótica do GoF (Gang of Four), identifique as afirmativas a seguir como verdadeiras (V) ou falsas (F):
( ) Composite = Compor objetos em estruturas de árvore (hierarquias todo-parte), permitindo tratar objetos individuais e composições de maneira uniforme.
( ) Bridge = Desacoplar uma abstração de sua implementação para que as duas partes possam variar independentemente.
( ) Proxy = Prover um substituto ou ponto de acesso através do qual um objeto possa controlar/delegar o acesso a outro.
( ) Flyweight = Compartilhar partes comuns dos objetos, permitindo suportar eficientemente grandes quantidades de objetos refinados.
Assinale a alternativa que apresenta a sequência correta, de cima para baixo.
Uma das disciplinas do emergent design refere-se ao uso de padrões de projeto para criar arquiteturas de aplicativos que sejam resilientes e flexíveis.
O padrão de projeto mediator visa padronizar a gramática e a interpretação de uma linguagem, ao passo que o padrão iterator verifica como os objetos padronizados interagem entre si.
Domain-Driven Design pode ser aplicada ao processo de concepção arquitetural de um sistema de software, sendo que domain, em um software, designa o campo de ação, conhecimento e influência.
Julgue o item que se segue, a respeito da arquitetura de software e de ambientes computacionais.
O Prototype é um padrão de criação de projeto que estabelece
que um objeto deve possuir apenas uma instância, de modo que
uma única classe gera somente um objeto, que deve estar
disponível para todo o escopo da aplicação.