Questões de Arquitetura de Software - Padrões de projeto (Design Patterns) para Concurso
Foram encontradas 534 questões
Esse padrão de projeto denomina-se
Sobre o padrão de projeto Composite, analise as afirmativas abaixo:
I. Define hierarquias de classe que consistem de objetos primitivos e objetos compostos.
II. Útil para representar hierarquias partes-todo de objetos.
II. Torna mais fácil acrescentar novas espécies de componentes.
Está CORRETO o que se afirma em
Sobre padrões de projeto, analise as afirmativas abaixo:
I. É uma descrição de um problema e o cerne de sua solução, de forma que tal solução possa ser adaptada para resolver novos problemas.
II. Lidam com relacionamentos entre objetos que podem ser mudados, apenas, em tempo de compilação.
III. Um antipadrão tem como um de seus propósitos descrever uma solução ruim para um problema que resultou em uma situação ruim.
Está CORRETO o que se afirma, apenas, em
Em aplicações para web orientadas a objeto, há um design pattern muito utilizado, (relacionado à arquitetura de sistemas) que possui um componente que:
− Define o comportamento da aplicação.
− Mapeia ações do usuário para classes que cuidam do acesso aos dados.
− Seleciona páginas web para entregar resultados vindos das classes de acesso aos dados.
O componente citado no texto acima é o
Considere que é necessário fazer um programa que vá funcionar em várias plataformas, como Windows, Linux, Mac OS etc. O programa fará uso de diversas abstrações de janelas gráficas, por exemplo, janela de diálogo, janela de aviso, janela de erro etc. Um Analista sugeriu o uso de um padrão de projeto GoF estrutural que fornece um nível de abstração maior que o Adapter, pois são separadas as implementações e as abstrações, permitindo que cada uma varie independentemente.
O padrão sugerido pelo Analista é o
Suponha que em uma organização existe um conjunto de cargos e para cada cargo existem regras de cálculo da taxa de produtividade, cujo valor é determinado por uma porcentagem do salário base do funcionário. Este valor é acrescido ao salário do funcionário como um bônus. Um desenvolvedor deve criar uma solução que utilize um design pattern (padrão de projeto) cuja intenção é: “definir uma família de algoritmos, encapsular cada uma delas e torná-las intercambiáveis. O padrão de projeto permite que o algoritmo varie independentemente dos clientes que o utilizam”. Ou seja, o padrão sugere que algoritmos parecidos (métodos de cálculo da taxa de produtividade) sejam separados de quem os utiliza (funcionário). O padrão, além de encapsular os algoritmos da mesma família, também permite a reutilização do código. Nesta situação, caso a regra para cálculo da taxa de produtividade de dois tipos de funcionários, como Desenvolvedor e DBA, seja a mesma, não é necessário escrever código extra. Caso seja necessário incluir um novo cargo, basta implementar sua estratégia de cálculo da taxa ou reutilizar outra similar. Nenhuma outra parte do código precisa ser alterada.
O design pattern mencionado na situação apresentada é
Com relação ao tema Padrões de Projeto, conforme descritos por Gamma et alli, sobre o padrão Prototype, analise as afirmativas a seguir.
I. Apresenta como benefícios adicionais a adição e a remoção de produtos em tempo de execução.
II. Apresenta como benefícios adicionais a especificação de novos objetos pela variação de seus valores e/ou de sua estrutura.
III. Apresenta como benefícios adicionais a redução da necessidade de criação de subclasses.
Assinale:
Padrões de projeto nomeiam, explicam e avaliam um aspecto de projeto importante e recorrente em sistemas orientados a objetos.
Avalie as características atribuídas a um padrão de projeto.
I- Usado quando uma classe é usuária de uma certa hierarquia/ família de algoritmos, como um algoritmo de busca ou ordenação.
II- Esse padrão define uma família de algoritmos, encapsula cada um deles e os torna intercambiáveis.
III- Como existem diversos algoritmos em uma mesma família, não é desejável que se codifique todos eles em uma mesma classe.
IV- Permite que um algoritmo varie, independentemente dos clientes que o utilizam.
V- Fornece uma maneira de configurar uma classe com um dentre muitos comportamentos.
VI- Pode ser usado para evitar a exposição das estruturas de dados específicas de um algoritmo, que se deseja ocultar.
Essas características são do padrão de projeto
Os padrões arquiteturais descrevem a arquitetura, explicam quando elas podem ser usadas e discutem suas vantagens e desvantagens. Associe as colunas, relacionando os padrões arquiteturais aos cenários em que são geralmente utilizados.
Padrões
1- Client-server
2- Pipe and filter
3- Layers
4- Model-ViewController
5- Repository
Cenários
( ) Quando há necessidade de manter uma gerência centralizada de todos os dados, de modo que este seja acessível a todos os componentes do sistema, possibilitando uma interação indireta entre eles.
( ) Em aplicações de processamento de dados, em que as entradas são processadas em etapas separadas, nas quais os dados fluem de um componente para outro para processamento.
( ) Quando há possibilidade de incorporar novos requisitos não funcionais, como distribuição, segurança, persistência, entre outros, de modo a minimizar modificações no restante do sistema em razão da integração desse novo requisito.
( ) Quando há necessidade de que os dados sejam mantidos de maneira independente de sua apresentação, de modo que possam existir diversas maneiras de visualizar e interagir com os dados.
( ) Quando os dados compartilhados precisam ser acessados a partir de uma série de locais, podendo ser usados, também, quando a carga em um sistema é variável.
A sequência correta dessa associação é