Questões de Concurso Sobre padrões de projeto (design patterns) em arquitetura de software

Foram encontradas 552 questões

Q424032 Arquitetura de Software
Assinale a alternativa que apresenta corretamente um padrão de projeto de software comportamental.
Alternativas
Q424031 Arquitetura de Software
O padrão de projeto de software que permite a criação de famílias de objetos relacionados ou dependentes, através de uma única interface, sem a necessidade de especificar a classe concreta, é denominado de
Alternativas
Q365345 Arquitetura de Software
Considere as afirmações abaixo.

I - In Object-Oriented Programming, the Bridge pattern is used to separate the interface of class from its implementation, so that either can be varied separately. At first sight, the bridge pattern looks much like the Adapter pattern, in that a class is used to convert one kind of interface to another. However, the intent of the Adapter pattern is to make one or more class interfaces look the same as that of a particular class. The Bridge pattern is designed to separate a class interface from its implementation, so that you can vary or replace the implementation without changing the client code.

II - First normal form (1NF) means that a table has no multivalued attributes or composite attributes. (A composite attribute contains other attributes and can therefore be divided into smaller parts.) All relational tables are by definition in 1NF, because the value of any column in a row must be atomic—that is, single valued.

Pode-se afirmar que:
Alternativas
Q365297 Arquitetura de Software
Todos os sistemas bem estruturados são repletos de padrões, pois fornecem uma solução comum para um problema básico em um determinado contexto. O termo padrão de projeto pode ser considerado como:
Alternativas
Q299208 Arquitetura de Software
Imagem 068.jpg

Com base nessas informações, indique o padrão adotado.
Alternativas
Q275971 Arquitetura de Software
O padrão de projeto JEE (J2EE patterns) que é utilizado para solucionar problemas de acesso e manipulação de dados em uma camada separada e que implementa mecanismos de acesso para persistência de dados, em arquitetura mainframes, LDAP ou sistemas gerenciadores de banco de dados relacionais é denominado
Alternativas
Q271376 Arquitetura de Software
São exemplos de padrões comportamentais de projeto:

Alternativas
Q264149 Arquitetura de Software
Os padrões de projeto (Design Patterns) são classificados nas categorias:

Alternativas
Q261569 Arquitetura de Software
O padrão de projeto Factory provê uma classe de decisão que retorna

Alternativas
Q261567 Arquitetura de Software
O padrão de projeto singleton é usado para restringir

Alternativas
Q258833 Arquitetura de Software
Durante o desenvolvimento de um sistema para suporte a uma rede social, um desenvolvedor decidiu criar a facilidade de uma pessoa ter uma lista de amigos para poder enviar e-mails, postagens e/ou fotos. Essa lista pode conter um número indefinido de amigos ou de outras listas de amigos, criando uma estrutura recursiva.

O padrão de projeto que descreve essa estrutura é

Alternativas
Q249361 Arquitetura de Software
Um sistema está organizado segundo uma arquitetura em camadas, no qual cada camada corresponde a um pacote Java. A camada de serviços, ServiceLayer, possui dezenas de classes, que colaboram entre si para fornecer os serviços necessários. Para facilitar o acesso aos serviços disponíveis, o pacote em questão disponibiliza algumas interfaces, que agrupam operações de acordo com a natureza do serviço. As classes que implementam esses serviços, entretanto, não são visíveis fora do pacote. Dessa forma, o pacote fornece uma classe pública, Services, onde existem métodos estáticos que retornam objetos que implementam os serviços disponíveis. O código Java a seguir exemplifica o que foi descrito.

package ServiceLayer;
public interface ServiceA {
          int srvA1();
          int srvA2();
          int srvA3();
}
package ServiceLayer;
public interface ServiceB {
          int srvB1();
          int srvB2();
}
package ServiceLayer;
public class Services {
          private Services() {
          }
public static ServiceA serviceA() {
                    return new CL01();
          }
          public static ServiceB serviceB() {
                    return new CL01();
          }
}
package ServiceLayer;
class CL01 implements ServiceA, ServiceB{
          public int srvA1()
          { // código irrelevante }
          public int srvA2()
          { // código irrelevante }
          public int srvA3()
          { // código irrelevante }
          public int srvB1()
          { // código irrelevante }
          public int srvB2()
          { // código irrelevante }
}


O trecho de código a seguir mostra como os serviços disponíveis são executados.

{
          ServiceA s1=Services.serviceA();
          ServiceB s2=Services.serviceB();
          s1.srvA1();
          s2.srvB1();
          // código irrelevante
}



Essa arquitetura usou variações de dois padrões de projeto conhecidos, que são:
Alternativas
Q249359 Arquitetura de Software
Deseja-se que uma aplicação possa manipular diferentes tipos de bancos de dados de modo transparente às classes que necessitam de serviços de acesso a dados. Inicialmente será necessário fornecer suporte a bancos de dados XML e SQL, entretanto novos tipos poderão ser futuramente adicionados.

A solução proposta é a seguinte:

1. Uma classe abstrata (DB) será responsável por instanciar um objeto correspondente ao tipo de banco de dados desejado. Isso será feito através do método estático getDB(), que irá retornar um objeto de uma de suas subclasses concretas, de acordo com o parâmetro (tipo) passado.

2. O objeto criado no passo anterior irá instanciar conexões e consultas correspondentes ao tipo de DB criado; isto é, caso um DB XML tenha sido instanciado, apenas consultas XML e conexões XML serão instanciadas; caso um DB SQL tenha sido instanciado, apenas consultas SQL e conexões SQL serão instanciadas.

O diagrama de classe a seguir ilustra a estrutura descrita acima.

Imagem 033.jpg

Qual padrão de projeto foi utilizado na solução proposta?

Alternativas
Q234765 Arquitetura de Software
Supondo que um sistema tenha sido desenvolvido e documentado
de acordo com os conceitos da análise e do projeto orientado a
objetos e tenha sido utilizada, como ferramenta para modelagem, a
UML (Unified Modeling Language), versão 2.0, julgue os próximos
itens.

O padrão de projeto conhecido como façade é indicado para a definição de uma interface de nível mais alto que torne mais fácil a comunicação entre os subsistemas de um sistema complexo.
Alternativas
Q231752 Arquitetura de Software
Para facilitar a manutenção da aplicação, há um design pattern que tem como objetivo principal centralizar o acesso aos dados em uma única camada. Esse design pattern é o
Alternativas
Q225178 Arquitetura de Software
O desenvolvimento de software é uma atividade que apresenta dificuldades, ligada ao entendimento do problema. Design Patterns surgiram na busca de soluções para as dificuldades, tornando-se um mecanismo eficiente no compartilhamento de conhecimento entre os desenvolvedores. Gamma propõe um modo de categorização dos DESIGN PATTERNS, definindo famílias de padrões relacionados, descritos a seguir.

I. Abrange a configuração e inicialização de objetos e classes.

II. Lida com as interfaces e a implementação das classes e dos objetos.

III. Lida com as interações dinâmicas entre grupos de classes e objetos.

Essas famílias são denominadas, respectivamente,
Alternativas
Q215390 Arquitetura de Software
A maioria das aplicações web tem algumas funcionalidades (por exemplo, segurança), que são aplicáveis a todas as requisições da aplicação. Para adicionar essa funcionalidade separadamente para cada requisição da aplicação seria demorado, propenso a erros e difícil de manter. Para resolver esse problema pode ser utilizado o design pattern
Alternativas
Q215387 Arquitetura de Software
Analise o texto:

É um design pattern que permite que uma aplicação seja desenvolvida de forma que a camada de acesso aos dados seja isolada das camadas superiores. Numa aplicação que utiliza a arquitetura MVC, todas as funcionalidades de bancos de dados, tais como estabelecimento de conexões, mapeamento de objetos Java para tipos de dados SQL ou execução de comandos SQL, devem ser feitas por classes representadas nesse design pattern.

O texto faz referência ao design pattern
Alternativas
Q215126 Arquitetura de Software
Em projetos orientados a objetos, temos vários padrões de projetos. Sobre o padrão Adaptador, analise as assertivas e assinale a alternativa que aponta a(s) correta(s).

I. Adaptador não é um padrão de projeto reconhecido.

II. Normalmente, o padrão adaptador aplica-se a qualquer contexto em que queiramos modificar uma classe existente de maneira que seus métodos se adaptem aos de uma classe ou interface relacionada, porém diferente.

III. A regra geral para aplicar o padrão Adaptador é definir a nova classe de maneira que ela contenha uma instância da classe antiga, como um campo escondido, e implemente os métodos da nova classe usando os métodos da varável de instância escondida.

IV. Adaptador garante através de um método público que somente uma instância da classe em questão existirá.
Alternativas
Q453042 Arquitetura de Software
Quanto aos design patterns, é correto afirmar que:
Alternativas
Respostas
421: C
422: D
423: D
424: B
425: E
426: E
427: C
428: E
429: C
430: B
431: C
432: D
433: D
434: C
435: C
436: C
437: D
438: B
439: C
440: E