Questões de Concurso
Sobre padrões de projeto (design patterns) em arquitetura de software
Foram encontradas 552 questões
Um padrão (pattern) tem pelo menos os seguintes elementos: nome, problema, solução e consequência.
Em virtude da característica de combinatoriedade, um padrão não permite a construção de outro padrão derivado.
Design Pattern, técnica de desenvolvimento de soluções eletrônicas, estabelece determinada ordem na elaboração e implantação de desenvolvimento de algoritmos, independentemente da sua complexidade e da linguagem de programação na qual será implantado.
I. Fornece uma interface para a criação de uma família de objetos relacionados ou dependentes sem fornecer os detalhes de implementação das classes concretas.
II. Converte uma interface de uma classe existente em outra interface esperada pelos clientes. Permite que algumas classes com interfaces diferentes trabalhem em conjunto.
III. Separa uma implementação de sua abstração, de forma que ambas possam variar independentemente.
IV. Separa a construção de um objeto complexo de sua representação, de modo que o mesmo processo possa criar representações diferentes.
Tratam, respectivamente, dos design patterns:
.Os padrões estruturais, tais como o Bridge e o Proxy, abstraem o processo de instanciação, ajudando a tornar um sistema independente de como os seus objetos são criados. Já os padrões de criação, como Prototype e o Builder, se preocupam com a forma como as classes e os objetos são criados para formar estruturas compostas maiores.
O uso do padrão Builder tem a vantagem de permitir acesso controlado à instância de uma classe, uma vez que ele encapsula a classe, criando um ponto global único de acesso.
O padrão Adapter será mais apropriado que o Façade quando for necessário fornecer uma interface unificada para um conjunto de interfaces em um subsistema.
Uma das aplicabilidades do padrão Iterator é a representação de hierarquias do tipo todo-parte de objetos, de modo que a aplicação seja capaz de ignorar a diferença entre composições de objetos e objetos individuais, haja vista que todos os objetos tratados no padrão têm comportamento uniforme.
O padrão Don’t Talk to Strangers é utilizado para fortalecer o polimorfismo, realizado pelo padrão Polymorphism. O objetivo de ambos os padrões é substituir um componente sem afetar outro componente, embora o primeiro implemente o polimorfismo em nível de classe e o segundo lide com alternativas embasadas no tipo de componente.
O padrão Indirection é utilizado para atribuir responsabilidades à classe que tiver a informação necessária para satisfazer a responsabilidade
Nos casos em que a solução oferecida pelo padrão Expert violar a alta coesão e o baixo acoplamento, o padrão adequado a ser aplicado será o Creator, que atribui um conjunto altamente coesivo de responsabilidades a uma classe artificial que não representa um conceito do domínio do problema.
O padrão Pure Fabrication objetiva designar a responsabilidade unívoca pela criação de uma nova instância de uma classe.
Os padrões CORBA auxiliam a comunicação lógica entre objetos em arquiteturas de objetos distribuídos mesmo onde objetos implementados possuam diferentes linguagens ou plataformas.
O controle de como e quando os clientes acessam a instância pode ser obtido por meio da operação getInstance.
Esse padrão permite o refinamento de operações e de representação, pois as várias classes singleton obedecem à mesma interface, o que permite que um singleton seja escolhido para trabalhar com determinada aplicação em tempo de execução.
Padrões de projeto envolvem combinações de classes e algoritmos associados que cumprem com propósitos comuns de projeto.
Para um problema recorrente no desenvolvimento de sistemas, normalmente, um padrão de projeto descreve uma solução geral, que não pode ser reutilizada.
O padrão de comportamento e encadeamento de atendentes (chain of responsibility) evita acoplamento entre solicitantes e atendentes, permitindo que mais de um objeto tenha chance de tratar a solicitação.
( ) Padrão desenvolvido para fornecer um diretório de busca para os negócios e seus serviços, com o objetivo de ser um mediador do serviço, permitindo aos clientes requisitantes encontrar um fornecedor do serviço apropriado.
( ) Baseado em PHP, com uma plataforma neutra de dados que permite descrever as relações hierárquicas de forma simplificada.
( ) Os dados em um registro UDDI só podem ser conceitualmente divididos nas categorias Modelos Técnicos, Negócios e Serviços do Negócio.
( ) O elemento businessEntity é um elemento filho do businessService e descreve a função de negócio de um serviço.