Baixe o app para aproveitar ainda mais
Prévia do material em texto
Acerca dos padrões de criação e de padrões estruturais, assinale a opção correta. i) Decorator permite anexar responsabilidades adicionais a um objeto dinamicamente. ii) Builder desacopla uma abstração de sua implementação para que os dois possam variar independentemente. iii) Mediator fornece um substituto ou ponto através do qual um objeto possa controlar o acesso a outro. Em relação aos itens acima está correto: 1. São exemplos de padrões estruturais: Adapter, Façade, Proxy, Composite, Decorator e Chain of Responsibility. Uma das consequências do uso do padrão Prototype é o aumento no uso de subclasses. O padrão adaptador de classe (class adapter) facilita acomodar a adaptação de subclasses de uma classe previamente adaptada. São participantes do padrão Façade: o cliente, o alvo, o adaptador e o adaptado. O uso do padrão singleton apresenta como consequências uma redução do uso de variáveis globais e uma melhor organização do espaço de nomes de um software orientado a objetos. Explicação: Os Padrões de Criação fornecem um guia de como instanciar objetos. Esta ação normalmente envolve decisões dinâmicas para escolher, por exemplo, qual classe instanciar, ou a quais objetos delegar responsabilidade. Esse padrão nos mostra como estruturar e encapsular essas decisões. O padrão de projeto Singleton é um dos padrões mais conhecidos e extensivamente utilizados em programação orientada a objetos. Está direcionado para as situações onde precisamos manter uma única instancia de uma classe durante toda a execução da aplicação. A sua estrutura é bastante simples, existe apenas uma classe chamada Singleton, que define um método chamado Instance, responsável poder retornar aos clientes à única instancia da classe. 2. somente a ii somente a i e ii somente a ii e iii somente a iii somente a i Explicação: O item II está errado porque o padrão BUILDER é um Padrão de Criação. É um padrão cuja responsabilidade é a CONSTRUÇÃO Tentam minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor. Isso é comum em desenvolvedores iniciantes. O item III está errado porque o padrão Mediator é um padrão define um objeto que encapsula a forma como um conjunto de objetos interage, promovendo o acoplamento fraco ao evitar que os objetos se refiram uns aos outros explicitamente, permitindo variar suas interações independentemente. Conhecido como padrões da gangue dos quatro, por terem sido desenvolvidos por quatro autores, os Padrões GoF (Group of Four) estão divididos pelos seguintes famílias de padrões: Padrões de Criação ou de Construção, Padrões Estruturais e Padrões Comportamentais. Considerando os padrões de Criação ou de Construção, analise o modelo abaixo e em seguida marque a alternativa que define a representação. Assinale a alternativa que indica o padrão correto. ¿Especifica os tipos de objetos a serem criados usando uma instância- protótipo e cria novos objetos pela cópia desse protótipo¿ 3. BUILDER. FACADE. SINGLETON. MEDIATOR. FACTORY METHOD. Explicação: Há cinco padrões de criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. O BUILDER é um Padrão de Criação. É um padrão cuja responsabilidade é a CONSTRUÇÃO Tentam minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor. Isso é comum em desenvolvedores iniciantes. 4. Bridge nenhuma das alternativas Singleton Prototype Adapter Explicação: Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. O padrão Prototype especifica tipos a criar usando uma instância como protótipo e criar novos objetos ao copiar este protótipo. O padrão de projeto Prototype declara um método chamado clone na superclasse abstrata do modelo (Prototype) O padrão de projeto Singleton é um dos padrões mais conhecidos e extensivamente utilizados em programação orientada a objetos. Sobre ele podemos afirmar I - Está direcionado para as situações onde precisamos manter uma única instancia de uma classe durante toda a execução da aplicação. II - A sua estrutura é bastante simples, existe apenas uma classe chamada Singleton, que define um método chamado Instance, responsável poder retornar aos clientes à única instancia da classe. III ¿ Na linguagem Java os modificadores states e private devem garantir uma mesma instância para todos os objetos criados e evitar acesso público; O padrão Singleton é um Padrão de Criação GoF. Com relação aos seus objetivos podemos afirmar que: I- O padrão de projeto Singleton declara um método chamado clone na superclasse abstrata do modelo. II- O padrão Singleton está direcionado para as situações onde precisamos manter uma única instancia de uma classe durante toda a execução da aplicação. III- O padrão Singleton é bastante útil para guardar o estado de um objeto em determinados momentos. Est(á)ão correta(s) a(s) afirmativa(s): 5. As afirmativas I, III, estão corretas e II errada As afirmativas I, II, III estão incorretas As afirmativas II, III estão corretas e a afirmativa I está errada. As afirmativas I, II, estão corretas e a afirmativa III está errada. As afirmativas estão todas corretas Explicação: Há cinco padrões de criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. O Singleton é um Padrão de Criação. Esses Padrões de Criação fornecem um guia de como instanciar objetos. O objetivo do Singleton é garantir que uma classe só tenha uma única instância, e prover um ponto de acesso global a ela. Os Singletons são uma forma de implementar uma responsabilidade centralizada. O instanciamento do objeto pode ser feito quando a classe for carregada ou quando o método de criação for chamado pela primeira vez. 6. Somente os itens I e II; Somente os itens I e III; Somente o item II; Somente os itens II e III; Somente o item I; Explicação: Os itens I e III estão errados porque eles se referem ao padrão Prototype. (CESGRANRIO - 2006 - Petrobrás ) Christopher Alexander afirma: "cada padrão descreve um problema no nosso ambiente e o cerne da sua solução, de tal forma que você possa usar essa solução mais de um milhão de vezes, sem nunca faze-lo da mesma maneira". Muito embora Alexander estivesse falando a cerca de padrões em construções e cidades, o que ele diz é verdadeiro em relação aos padrões de projeto orientados a objeto. Neste caso, as soluções são expressas em termos de objetos e interfaces em vez de paredes e portas, mas no cerne de ambos os tipos de padrões está a solução para um problema num determinado contexto. Quanto à indicação para o uso dos padrões de projeto é FALSO afirmar que o padrão: Consideram as afirmativa abaixo sobre o padrão protype I - Declara um método chamado clone na superclasse abstrata do modelo (Prototype). Em função desta declaração, cada classe concreta derivada deve ser capaz de gerar uma nova instância de si próprio. II - , Entre as aplicações para este padrão de projeto está a facilidade de instanciar classes em tempo de execução. III Quando as instancias de uma classe apresentam poucas combinações de estados, pode ser mais conveniente definir previamente um conjunto de protótipos e cloná-los, sempre que foi necessário. 7. Mediator é indicado quando: um conjunto de objetos se comunica de maneiras bem definidas, porém complexas; a reutilização de um objeto é difícil porque ele referencia e se comunica com muitos outros objetos; um comportamento que está distribuído entre várias classes deveria ser customizável, ou adaptável, sem excessiva especialização em subclasses. Builder é indicado quando: uma classe não pode antecipar a classe de objetos que deve criar;uma classe quer que suas subclasses especifiquem os objetos que criam; classes delegam responsabilidade para uma dentre várias subclasses auxiliares, e você quer localizar o conhecimento de qual subclasse auxiliar que é a delegada. Memento é indicado quanto: um instantâneo de estado de um objeto deve ser salvo de maneira que possa ser restaurado para esse estado mais tarde; uma interface direta para obtenção do estado exporia detalhes de implementação e romperia o encapsulamento do objeto. Abstract Factory é indicado quando: um sistema deve ser independente de como seus produtos são criados, compostos ou representados; um sistema deve ser configurado como um produto de uma família de múltiplos produtos; uma família de objetos-produto for projetada para ser usada em conjunto, e você necessita garantir esta restrição; você quer fornecer uma biblioteca de classes de produtos e quer revelar somente suas interfaces, não suas implementações. Composite é indicado quando: quiser representar hierarquias partes-todo de objetos; quiser que os clientes sejam capazes de ignorar a diferença entre composições de objetos e objetos individuais, neste caso, os clientes tratarão todos os objetos na estrutura composta de maneira uniforme. Explicação: Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. Esses Padrões de Criação fornecem um guia de como instanciar objetos. Esta ação normalmente envolve decisões dinâmicas para escolher, por exemplo, qual classe instanciar, ou a quais objetos delegar responsabilidade. Esse padrão nos mostra como estruturar e encapsular essas decisões. Essa afirmativa é falsa porque o BUILDER é um Padrão de Criação. É um padrão cuja responsabilidade é a CONSTRUÇÃO Tentam minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor. Isso é comum em desenvolvedores iniciantes. 8. As afirmativas I, III, estão corretas e II errada As afirmativas I, II, estão corretas e a afirmativa III está errada. As afirmativas II, III estão corretas e a afirmativa I está errada. As afirmativas estão todas corretas As afirmativas I, II, III estão incorretas Explicação: Há cinco padrões de criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. O PROTOTYPE é um Padrão de Criação. É um padrão cuja responsabilidade é a CONSTRUÇÃO Ele especifica os tipos de objetos a serem criados usando uma instância como protótipo e criar novos objetos ao copiar este protótipo. A estrutura do Prototype cria um objeto novo, mas aproveitar o estado previamente existente em outro objeto. Conforme Gamma et al, 2000, Prototyoe especifica os tipos de objetos a serem criados usando uma instância-protótipo e cria novos objetos pela cópia desse protótipo.
Compartilhar