Baixe o app para aproveitar ainda mais
Prévia do material em texto
1a Questão Esses são padrões de projeto GoF estudados em aula, EXCETO: Facade Observer Workflow Strategy Adapter Respondido em 05/05/2020 09:30:43 Gabarito Coment. 2a Questão Uma das categoria que tradicionalmente se classificam os padrões de projeto :Padrões Comportamentais cujo objetivo é: Define como implantar o mecanismo de herança em um grupo de objetos Define como implantar um novo método em uma classe. Define formas de gerencia e combinar diferentes comportamentos. Define a forma de organização dos objetos e sua colaboração mutua Defende formas de instanciar objetos delegando responsabilidades Respondido em 05/05/2020 09:30:45 Explicação: Há três grupos de padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. O padrão de comportamental GoF contempla 11 (onze) tipos de padrões: Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method e Visitor. São projetados para organizar, gerenciar e combinar diferentes comportamentos. Têm a ver com a maneira pela qual responsabilidades são distribuídas a classes e objetos durante a realização de uma tarefa e também são abstrações de aspectos comportamentais. 3a Questão Padrões de projeto são voltados para que tipo de problemas? Assinale a resposta INCORRETA. Problemas que ocorrem no nosso dia-a-dia. Problemas recorrentes. Problemas eu qualquer área de conhecimento. Problemas que não se repetem. Problemas na área de desenvolvimento de software. Respondido em 05/05/2020 09:30:51 Explicação: Padrões de projeto são voltados para problemas recorrentes que ocorrem no nosso dia-a-dia, seja na área de desenvolvimento de software, seja em qualquer outra área do conhecimento.. 4a Questão Assinale a alternativa correta. As classes participantes do padrão de projeto Abstract Factory são: nenhuma das alternativas AbstractFactory, Method Factory, AbstractProduct, ConcreteImplementation, Client InterfaceFactory, Concrete Implementaion, AbstractProduct, ConcreteProduct, Client AbstractFactory, Concrete Factory, AbstractProduct, ConcreteProduct, Client AbstractFactory, Concrete Factory, AbstractProduct, ConcreteProduct, Main Respondido em 05/05/2020 09:31:25 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. O método Abstract Factory fornece uma interface para a criação de uma família de objetos relacionados ou dependentes sem especifi car suas classes completas. 5a Questão Por que usar Padrões de Projeto? Os padrões de projeto não servem para alcançar objetivos diversos na engenharia e se utilização de linguagens orientadas a objeto. Os padrões de projeto servem para alcançar objetivos na engenharia de software usando classes e métodos em linguagens orientadas a objeto. Os padrões de projeto servem para alcançar objetivos na engenharia de software usando procedures e funções em linguagens de programação. Os padrões de projeto não nos servem para alcançar objetivos na engenharia de software usando classes e métodos em linguagens orientadas a objeto. Os padrões de projeto servem para alcançar objetivos na engenharia de software usando implementações ou códigos fontes feitos em linguagens orientadas a objeto. Respondido em 05/05/2020 09:31:21 Explicação: Padrões de projeto são voltados para problemas recorrentes que ocorrem no nosso dia-a-dia. São descrições de objetos que se comunicam e classes que são customizadas para resolver um problema genérico de design em um contexto específico. 6a Questão Sobre padrão, o que podemos afirmar: Definimos a maneira teórica de alcançar um objetivo qualquer, e, por isso, não tem muito uso para áreas da engenharia. Definimos pratica testada ou documentada de alcançar um objetivo qualquer, e que nunca mais é usada pois as situações não se repetem. Não é muito utilizado em áreas da engenharia. Definimos como maneira testada ou documentada de alcançar um objetivo qualquer, e é muito utilizado em varias áreas da engenharia. Definimos como forma, em experimento provisório, pela comunidade acadêmica da área sem documentação e é muito utilizado em varias áreas da engenharia. Definimos como experiências praticas sem ter documentação, e é muito utilizado em varias áreas da engenharia. Respondido em 05/05/2020 09:31:18 Explicação: Padrões de projeto são voltados para problemas recorrentes que ocorrem no nosso dia-a-dia. São descrições de objetos que se comunicam e classes que são customizadas para resolver um problema genérico de design em um contexto específico. 7a Questão Sobre o que falava Erich Gamma quando o mesmo disse "Abstraem o processo de instanciação, ajudando a tornar o sistema independente da maneira que os objetos são criados, compostos e representados"? GRASP Padrões de Criação Padrões Estruturais Padrões Comportamentais Todos os padrões Respondido em 05/05/2020 09:31:14 Explicação: Há três grupos de padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. O padrão de criação GoF contempla cinco tipos de padrões: Abstract Factory, Builder, Factory Method, Prototype e Singleton. Para Gamma et all, "Os padrões de projeto são descrições de objetos que se comunicam e classes que são customizadas para resolver um problema genérico de design em um contexto específico". 8a Questão Escolha a opção que contem, somente, padrões de interface, segundo Metsker:: Adapter, Decorator, Composite e Bridge Abstract Factory, Facade, Composite e Bridge Decorator, Facade, Composite e Bridge Adapter, Facade, Composite e Builder Adapter, Facade, Composite e Bridge 1a Questão Analise as afirmações abaixo: I. Encapsula a escolha da classe concreta a ser utilizada na criação de objetos. II. Especifica os tipos de objetos a serem criados usando protótipo de objetos III. Garante que uma classe tem somente uma instância; As afirrmações correspondem respectivamente a: Factory Method, Singleton, Abstract Factory Abstract Factory, Factory Method, Singleton Factory Method, Abstract Factory, Singleton Abstract Factory, Singleton, Factory Method Singleton, Abstract Factory, Factory Method Respondido em 05/05/2020 09:31:41 Explicação: Essa resposta está correta porque há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. 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. 2a Questão 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 Application Service DTO DAO Business Object MVC Respondido em 05/05/2020 09:31:44 3a Questão (FESMIP-BA - 2011) Segundo a classificação de Design Patterns apresentada pela GoF, identifique com V os padrões comportamentais e com F,os demais. ( ) Observer. ( ) Iterator. ( ) Façade. ( ) Composite. ( ) Visitor. A alternativa que contém a sequência correta, de cima para baixo, é a F F V V V F V V V F V V V V V V V F F V V F F V F Respondido em 05/05/2020 09:31:49 4a Questão Uma das categoria que tradicionalmente se classificam os padrões de projeto :Padrões Estruturais cujo objetivo é: Define formas de gerencia e combinar diferentes comportamentos. Define a forma de organização dos objetos e sua colaboração mutua Define como implantar um novo método em uma classe. Define como implantar o mecanismo de herança em um grupo de objetos Defende formas de instanciar objetos delegando responsabilidades Respondido em 05/05/2020 09:32:07 Explicação: A família de padrões GoF, está divida em três grupos principais de padrões: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. O objetivo dos Padrões Estruturais é definir caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mutua. 5a Questão Qual o objetivo dos Padrões Comportamentais? Assinale a opção CORRETA. Definem a quais objetos delegar responsabilidade. Mostram como estruturar e encapsular essas decisões. O objetivo dos Padrões Comportamentais têm a ver com a maneira pela qual responsabilidades são distribuídas a classes e objetos durante a realização de uma tarefa. Envolve decisões dinâmicas para escolher qual classe instanciar. Fornecem um guia de como instanciar objetos. Respondido em 05/05/2020 09:32:01 Explicação: Essa afirmativa está CORRETA porque as outras se referem a Padrões de Criação. 6a Questão Um design pattern descreve uma solução geral comprovada e reutilizável para um problema recorrente no desenvolvimento de sistemas de software orientados a objetos. Padrões de projeto ajudam a reconhecer e implementar boas soluções para problemas comuns. Dois dos principais design patterns utilizados atualmente são descritos a seguir: I. Visa garantir que uma classe só tenha uma única instância e prover um ponto de acesso global a ela. II. Visa definir uma dependência um-para-muitos entre objetos para que quando um objeto mudar de estado os seus dependentes sejam notificados e atualizados automaticamente. Os design patterns descritos em I e II são, respectivamente: Singleton e Command. Facade e Observer. Singleton e Observer. Composite e Adapter Facade e Adapter. Respondido em 05/05/2020 09:32:04 7a Questão Analise as afirmações abaixo: I. Define uma dependência um para muitos entre objetos, de forma que, quando o objeto é alterado todos os seus dependentes são notificados e atualizados.. II. Dada uma linguagem define uma representação para a sua gramática juntamente com um interpretador. III. Agrega dinamicamente responsabilidades adicionais a um objeto. As afirrmações correspondem respectivamente a: Interpreter, Observer, Decorator Observer, Decorator, Interpreter Interpreter, Observer, Decorator Decorator, Interpreter, Observer Observer, Interpreter, Decorator Respondido em 05/05/2020 09:32:09 Explicação: O padrão Observer (observad or) define uma dependência um para muitos, que será necessária para fazer a relação entre um conjunto de dados e várias representações, além de permitir que, quando um objeto mude de estado, todos os dependentes sejam notificados. Define uma dependência um para muitos entre objetos tal que, quando o estado de um objeto muda, todos os seus dependentes são notificados e atualizados automaticamente. O padrão Interpreter é um dos padrões de projeto de software, famosos como "Design Patterns", muito utilizado para a resolução de problemas quando a modelagem de sistemas ou softwares. Esse padrão esta incluso na categoria de Padrão Comportamental, ou seja, ele busca solucionar problemas de modelagem que tratam o comportamento de classes. Tem a função de interpretar, interfacear delegando responsabilidade. O padrão Decorator é um padrão de cuja intenção são as Extenções. O padrão Decorator anexa responsabilidades adicionais a um objeto (em caráter dinâmico) dinamicamente. Decorators oferecem uma alternativa flexível ao uso de herança para estender uma funcionalidade (para a extensão de funcionalidade). 8a Questão Analise as afirmações: I. Para não perder tempo e dinheiro elaborando soluções diferentes para o mesmo problema, poderíamos escolher uma solução como padrão e adotá-la toda vez que o problema correspondente ocorrer. Além de evitar o retrabalho, facilitaríamos a comunicação dos desenvolvedores e o entendimento técnico do sistema. Daí surge o conceito de padrão de projeto ou design pattern. (www.k19.com.br - apostila K19- K51). II. Um padrão de projeto é uma solução consolidada para um problema recorrente no desenvolvimento e manutenção de software orientado a objetos. III. Um padrão de projeto é descrito basicamente com um sumário e uma solução. Assinale a alternativa correta: Apenas está correta a afirmativa I; Apenas está correta a afirmativa II; Todas as afirmativas estão corretas; Estão corretas as afirmativas II e III; Estão corretas as afirmativas I e III; 1a Questão Dentre as alternativas abaixo identifique a que NÃO define uma situação em que deve ser utilizado o padrão Factory Method? Quando o algoritmo de criação de um objeto deve ser independente das suas partes constituintes e da maneira como ele é "montado". Quando uma classe (o criador) não pode antecipar a classe dos objetos que deve criar. Quando uma classe quer que suas subclasses especifiquem os objetos criados. Quando se quer localizar num ponto único a conhecimento de qual subclasse está sendo usada. Quando classes delegam responsabilidade para uma entre várias subclasses de apoio. Respondido em 05/05/2020 09:32:32 Explicação: Há três grupos de padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. Há cinco padrões de criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. O Factory Method é um Padrão de Criação. 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. O objetivo do Factory Method (Método de Fábrica) é definir uma interface para criar um objeto, mas deixar as subclasses definirem que classe instanciar. Definir uma interface para criar um objeto mas deixar que subclasses decidam que classe instanciar. 2a Questão Qual padrão define uma interface para criar um objeto, mas deixa as subclasses decidirem que classe instanciar? Builder. Nenhuma das anteriores. Abstract Factory. Singleton. Factory Method. Respondido em 05/05/2020 09:32:53 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. O objetivo do Factory Method (Método de Fábrica) é definir uma interface para criar um objeto, mas deixar as subclasses definirem que classe instanciar. Situações em que deve ser utilizado o padrão Factory Method: Quando se quer localizarnum ponto único a conhecimento de qual subclasse está sendo usada. Quando classes delegam responsabilidade para uma entre várias subclasses de apoio. Quando uma classe quer que suas subclasses especifiquem os objetos criados. Quando uma classe (o criador) não pode antecipar a classe dos objetos que deve criar. 3a Questão (2017 - IESES - CREA-SC) Assinale a alternativa que define corretamente o conceito de Design Patterns: ¿Uma solução para um problema dentro de um contexto¿ ¿Uma prática não estruturada para solução de problemas independentemente de um contexto¿ ¿Uma solução para um problema independentemente de um contexto¿ ¿Um procedimento padrão para resolver problemas anteriormente desconhecidos dentro de um contexto genérico¿ ¿Uma prática não estruturada para solução de problemas dentro de um determinado contexto¿ Respondido em 05/05/2020 09:32:44 Explicação: Padrões de projeto são voltados para problemas recorrentes que ocorrem no nosso dia-a-dia. São descrições de objetos que se comunicam e classes que são customizadas para resolver um problema genérico de design em um contexto específico. 4a Questão Sobre padrões de projeto escolha a opção incorreta. Os padrões de projeto são descrições de objetos que se comunicam e classes que são customizadas para resolver um problema genérico de design em um contexto específico. Um padrão de projeto define uma estrutura que obrigatoriamente não poderá ser alterada pelo desenvolvedor a diversidade de padrões disponíveis é bastante grande, pode-se ter, por exemplo, padrões arquiteturais, padrões de análise, padrões de projeto e padrões de código. Cada padrão descreve um problema que ocorrem repetidas vezes em nosso ambiente e fornece o núcleo da solução para aquele problema, de tal maneira que se pode usar essa solução milhões de vezes sem nunca fazê-la da mesma forma Padrões de projeto estão relacionados a diferentes níveis de abstração no desenvolvimento de aplicações orientadas a objetos, podendo aparecer ao longo de todo ciclo de análise e projeto de um sistema Respondido em 05/05/2020 09:32:49 Explicação: Há três grupos de padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. O padrão de criação GoF contempla cinco tipos de padrões: Abstract Factory, Builder, Factory Method, Prototype e Singleton. Esta opção é incorreta porque durante o projeto uma estrutura pode ser alterada. 5a Questão Conhecido como padrões da guangue dos quatro, os padrões GoF estão classificados em: Padrões estruturais, padrões de comportamento e padrões de fábrica. Padrões de criação, padrões estruturais e padrões comportamentais. Padrões de Interpretação, padrões de observação e padrões estruturais. Padrões de criação, padrões de composição e padrões comportamentais. Padrões estruturais, padrões de emocionais e padrões de fábrica. Respondido em 05/05/2020 09:32:51 Explicação: Gang of Four - Gangue dos Quatro. Há três grupos de Padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. 6a Questão Qual padrão de criação está representado na figura abaixo? Prototype Abstract Factory Factory Method Builder Singleton Respondido em 05/05/2020 09:33:11 Explicação: Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. O método Abstract Factory fornece uma interface para a criação de uma família de objetos relacionados ou dependentes sem especifi car suas classes completas. 7a Questão Qual o objetivo dos Padrões Estruturais? Assinale a opção CORRETA. Envolve decisões dinâmicas para escolher qual classe instanciar. Definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mutua. Definem a quais objetos delegar responsabilidade. Mostram como estruturar e encapsular essas decisões. Fornecem um guia de como instanciar objetos. Respondido em 05/05/2020 09:33:14 Explicação: Essa afirmativa está CORRETA porque as outras se referem a Padrões de Criação. 8a Questão 1) A empresa XWebx foi contratada para desenvolver aplicativos de uma instituição financeira que possam ser executados em diferentes plataformas, como PC, celular e tablet. Para evitar a necessidade de criar diferentes soluções para cada plataforma, a empresa decidiu adotar um padrão de projeto que defina uma família de componentes para cada plataforma e uma implementação que os instancie de acordo com a plataforma-alvo na qual a aplicação estará sendo executada. O padrão adequado a essa implementação é: Adapter Abstract Factory Prototype Strategy Template Method 1a Questão Além dos benefícios tradicionais relacionados com produtividade, redução do tempo de desenvolvimento e reaproveitamento de soluções passadas, a utilização de padrões de projeto pode contribuir ainda nos seguintes aspectos? Assinale a opção INCORRETA. Auxiliam na aprendizagem a partir da documentação de experiências passadas. Auxiliam programadores inexperientes a desenvolverem soluções mais elegantes, melhor documentadas, padronizadas e reutilizáveis. Auxiliam no refatoramento da aplicação. Auxiliam representar algoritmos como objetos, estruturas de classe ou objeto. Auxiliam os analistas e desenvolvedores a melhor utilizar as práticas tradicionais de análise e projeto orientado a objetos, tais como abstração, encapsulamento, herança, polimorfismo. Respondido em 05/05/2020 09:37:18 Explicação: Essa afirmativa está INCORRETA porque esse é um benefício que é conseqüência da documentação gerada para cada tipo de padrão criado. 2a Questão Analise as sentenças sobre padrões de projeto de software e, em seguida, assinale a alternativa correta: I. Permitem descrever fragmentos de projeto e reusar ideias de projeto; II. Dão nome e forma a procedimentos abstratos, regras e melhores práticas relativas às técnicas orientadas a objetos; III. Ajudam a escolher alternativas de projeto que tornam um sistema reutilizável. Todas as sentenças estão corretas Apenas as sentenças II e III estão corretas Apenas as sentenças I e II estão corretas Apenas as sentenças I e III estão corretas Apenas a sentença II está correta Respondido em 05/05/2020 09:37:29 Explicação: Isso porque padrões de projeto são voltados para problemas recorrentes que ocorrem no nosso dia-a-dia, seja na área de desenvolvimento de software, seja em qualquer outra área do conhecimento. Os padrões de projeto são descrições de objetos que se comunicam e classes que são customizadas para resolver um problema genérico de design em um contexto específico. 3a Questão Analise as sentenças abaixo sobre os grupos de padrões da família GoF e, em seguida, assinale a alternativa correta: I. Os Padrões Comportamentais são projetados para organizar, gerenciar e combinar diferentes comportamentos. Podemos citar os seguintes padrões pertencentes a esse grupo: Chain of Responsibility, Command e Interpreter. II. Os Padrões de Criação fornecem um guia de como instanciar objetos. Esta ação normalmente envolve decisões estáticas para escolher, por exemplo, quais objetos instanciar ou a quais classes delegar responsabilidade. São doze os padrões de criação: Adapter, Bridge, Composite, Decorator, Façade, Flyweight, Proxy, Abstract Factory, Builder, Factory Method, Prototype e Singleton. III. Os Padrões Estruturais definem caminhos comuns para a organização de diferentes tipos de objetos, facilitandosua integração e colaboração mútua. Apenas a sentença II está correta Todas as sentenças estão corretas Apenas as sentenças I e II estão corretas Apenas as sentenças I e III estão corretas Apenas as sentenças II e III estão corretas Respondido em 05/05/2020 09:37:23 Explicação: Há três grupos de padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. O item II está errado porque os padrões de Criação GoF contemplam 5 (cinco) tipos de padrões: Escopo por Classe: Factory Method ; Escopo por Objeto: Abstract Factory, Builder, Prototype e Singleton. Eles são associados ao processo de criação de objetos, e tornam um sistema independente de como seus objetos são criados, compostos e representados. 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. 4a Questão Considere as seguintes assertivas sobre as vantagens do uso de Padrões de Projeto (Design Patterns): I. Padrões de projeto proporcionam um vocabulário comum de projeto, facilitando comunicação, documentação e aprendizado dos sistemas de software. II. Padrões de projeto auxiliam no desenvolvimento de software por meio da reutilização do projeto de soluções computacionais já testadas e aprovadas. III. Uma biblioteca de padrões pode ajudar a melhorar e padronizar o desenvolvimento de software. As assertivas corretas são: Somente II. Somente I e III. Somente I e II. Somente II e III. I, II e III. Respondido em 05/05/2020 09:37:28 5a Questão Uma das categoria que tradicionalmente se classificam os padrões de projeto: Padrões de criação cujo objetivo é: Define formas de gerencia e combinar diferentes comportamentos. Define formas de instanciar objetos delegando responsabilidades Define a forma de organização dos objetos e sua colaboração mutua Define como implantar o mecanismo de herança em um grupo de objetos Define como implantar um novo método em uma classe. Respondido em 05/05/2020 09:37:49 Explicação: Isso porque padrões de projeto são voltados para problemas recorrentes que ocorrem no nosso dia-a-dia, seja na área de desenvolvimento de software, seja em qualquer outra área do conhecimento. Ao caracterizarmos os padrões de projeto por Finalidade, temos: Estruturais, de Criação e Comportamentais. Os de Criação são associados ao processo de criação de objetos e também tornam um sistema independente de como seus objetos são criados, compostos e representados. 6a Questão Podemos afirmar que os Padrões de Criação da família GoF: Fornecem um guia de como instanciar objetos, que normalmente envolve decisões dinâmicas para escolher, por exemplo, qual classe instanciar ou a quais objetos delegar responsabilidade. Colocam em dúvida o tratamento dispensado aos usuários na fase de levantamento das necessidades. Definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mútua. São projetados para organizar, gerenciar e combinar diferentes comportamentos. Subutilizam as rotinas de tratamento de erros, em virtude da depuração de código fonte na fase de levantamento das necessidades junto aos usuários. Respondido em 05/05/2020 09:37:55 Explicação: Há três grupos de padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. Os padrões de criação GoF contemplam 5 (cinco) tipos de padrões: Abstract Factory, Builder, Factory Method, Prototype e Singleton. 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 7a Questão (ESAF - 2005 - Receita Federal - Auditor Fiscal da Receita Federal - Área Tecnologia da Informação) Analise as seguintes afirmações relacionadas a padrões de projetos: I. O padrão Builder separa a construção de um objeto complexo de sua representação, de modo a que o mesmo processo de construção possa criar diferentes representações. II. O método Abstract Factory fornece uma interface para a criação de uma família de objetos relacionados ou dependentes sem especifi car suas classes completas. III. O padrão Bridge defi ne uma interface para criar um objeto, mas deixa as subclasses decidirem que classe será instanciada. O Bridge permite a uma classe postergar a instanciação das subclasses. IV. O Chain of responsability usa compartilhamento para suportar grandes quantidades de objetos e define uma dependência um-para-muitos entre objetos, de modo que quando um objeto muda de estado, todos os seus dependentes são automaticamente notificados e atualizados. Indique a opção que contenha todas as afirmações verdadeiras. II e IV II e III I e II III e IV I e III Respondido em 05/05/2020 09:37:47 8a Questão Além dos benefícios tradicionais relacionados com produtividade, redução do tempo de desenvolvimento e reaproveitamento de soluções passadas, a utilização de padrões de projeto pode contribuir ainda nos seguintes aspectos I - É uma abordagem complementar, auxiliam os analistas e desenvolvedores a melhor utilizar as práticas tradicionais de análise e projeto orientado a objetos, tais como abstração, encapsula mento, herança, polimorfismo, entre outros. II ¿ Cada padrão descreve um conjunto de problemas e a solução é única não podendo ser alterado III - Auxiliam programadores inexperientes a desenvolverem soluções mais elegantes, melhor documentadas, padronizadas e reutilizáveis. IV - Muitos dos padrões de projeto desenvolvidos auxiliam no re fatoramento da aplicação. As afirmativas I, II, III, IV estão corretas As afirmativas I, III, IV estão corretas e a afirmativa II está errada As afirmativas I, II, IV estão corretas e a afirmativa III está errada As afirmativas I, II, III estão corretas e a afirmativa IV está errada. As afirmativas II, III, IV estão corretas e a afirmativa I está errada. 1a Questão O Design Patterns que tem a finalidade de usar compartilhamento para suportar grandes quantidades de objetos, de granularidade fina, de maneira eficiente, é denominado Composite Strategy Flyweight Builder State Respondido em 05/05/2020 09:38:18 2a Questão Segundo Metsker, a classificação dos padrões GoF se divide em: Interface, interação, responsabilidade, operações e extensões Interface, construção, responsabilidade, metodologia e extensões Interface, construção, responsabilidade, operações e extensões Interface, construção, responsabilidade, operações e especializações Interface, construção, decisão, operações e extensões Respondido em 05/05/2020 09:38:20 Explicação: Existem algumas classificações dos Padrões GoF. Essa resposta está correta porque essas são as intenções dos Padrões GoF segundo Metsker. 3a Questão (2016 - IF-PE) Observe as afirmativas abaixo: I. Com frequência, equipes de desenvolvimento de software escrevem classes que proveem funcionalidades similares às de outras classes já existentes. Esse padrão se aplica a qualquer contexto em que se deseja implementar funcionalidades já implementadas em outra classe, mas com interface diferente da classe já implementada. Esse padrão define uma nova classe de maneira que ela contenha uma instância da classe velha como um atributo privado,e implemente cada método da nova classe usando métodos da classe antiga. II. Fornece uma interface unificada para um conjunto de interfaces em um subsistema. Define uma interface de nível mais alto que torna o subsistema mais fácil de ser usado. III. Define o esqueleto de um algoritmo em uma operação, postergando alguns passos para as subclasses. Permite que subclasses redefinam certos passos de um algoritmo sem mudar a estrutura do mesmo. Esse padrão pode ser usado para implementar as partes invariantes do algoritmo uma só vez e deixar para as subclasses a implementação do comportamento que pode variar. IV. Evita o acoplamento do remetente de uma solicitação ao seu receptor ao dar a mais de um objeto a oportunidade de tratar a solicitação. Encadeia os objetos receptores, passando a solicitação ao longo da cadeia até que um objeto a trate. Esse padrão é utilizado quando mais de um objeto pode tratar uma solicitação e o objeto que a tratará não é conhecido a priori. O objeto que trata a solicitação é escolhido automaticamente. V. Você começou a trabalhar em um projeto que utiliza tecnologia Java RMI. Nesse projeto, é implementado um padrão de projeto que provê um ponto através do qual um objeto controla o acesso a outro. No projeto em questão, um objeto remoto que contém a implementação real é acessado através de um outro objeto local, de forma que o objeto local controla o acesso ao remoto. Para isso, ambos possuem a mesma interface. As afirmativas acima descrevem, respectivamente, os seguintes padrões de projeto: Adapter, Facade, Template Method, Chain of Responsibility e Proxy. Facade, Adapter Template Method, Chain of Responsibility e Decorator. Memento, Strategy, Chain of Responsibility, Template Method e Memento. Adapter, Facade, Template Method, Command e Interpreter. Adapter, Facade, Decorator, Command e Adapter. Respondido em 05/05/2020 09:38:12 Explicação: Há três grupos de Padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais. Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. Os Padrões Estruturais GoF contemplam 7 (sete) tipos de padrões: Adapter, Bridge, Composite, Decorator, Façade, Flyweight e Proxy. Definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mutua. Os Padrões Estruturais tratam da composição de classes e objetos para formar estruturas complexas; associados à maneira como classes e objetos são organizados estruturalmente; oferecem formas efetivas para usar conceitos OO como herança e composição, e são abstrações de aspectos estruturais. Há 11 Padrões Comportamentais GoF: Chain of Responsability, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method e Visitor. São projetados para organizar, gerenciar e combinar diferentes comportamentos. O objetivo dos Padrões Comportamentais tem a ver com a maneira pela qual responsabilidades são distribuídas a classes e objetos durante a realização de uma tarefa. São abstrações de aspectos comportamentais. 4a Questão (CESGRANRIO - 2010 - BACEN - Analista do Banco Central) Um arquiteto de software estuda que padrões de projeto são apropriados para o novo sistema de vendas de uma empresa. Ele deve considerar que o padrão : Bridge separa a construção de um objeto complexo de sua representação, de modo que o mesmo processo de construção possa criar diferentes representações. Template Method utiliza compartilhamento para suportar, eficientemente, grandes quantidades de objetos de granularidade fina. Singleton separa uma abstração de sua implementação, de modo que os dois conceitos possam variar de modo independente. Chain of Responsibility evita o acoplamento entre o remetente de uma solicitação e seu destinatário, dando oportunidade para mais de um objeto tratar a solicitação. Builder garante que uma classe seja instanciada somente uma vez, fornecendo também um ponto de acesso global. Respondido em 05/05/2020 09:38:29 Gabarito Coment. 5a Questão Qual padrão é de arquitetura? Gamma GRASP GoF MVC Flower Respondido em 05/05/2020 09:38:18 6a Questão (FUMARC - 2011) São padrões de projeto GoF (design patterns), EXCETO: Criador. Facade. Strategy. Visitor. Adapter. Respondido em 05/05/2020 09:38:22 7a Questão (FCC-2011) Os design patterns são projetos de arquitetura para um domínio específico de aplicação e sempre trazem componentes predefinidos que envolvem código de programação. são de uso exclusivo em processos de desenvolvimento de soluções orientado a objetos, já que os objetos são a mais adequada abstração para o reúso. podem ser modelados utilizando-se a linguagem UML que fornece um meio eficiente de modelar pa- drões de projeto representando-os como colaborações. consistem em conjuntos de classes que um usuário instancia para utilizar seus métodos. Após a chamada ao método, o controle do fluxo da aplicação retorna para o usuário. são aplicações propriamente ditas, normalmente construídas pela integração de diversos frameworks. Respondido em 05/05/2020 09:38:27 8a Questão ¿Padrões de Software são soluções reutilizáveis para problemas reincidentes que ocorrem durante o desenvolvimento de softwares¿ Gamma, E. (2009) Associe as colunas e marque a alternativa correta: 1. Model, View, Control 2. Padrões Estruturais 3. Padrões Comportamentais 4. Padrões de Criação 5. Padrões GOF ( ) Abstraem o processo de instanciação ( ) Estão divididos em três famílias ( ) Pode diminuir potencialmente o desempenho: a cada camada, as representações dos objetos sofrem modificações, e essas modificações levam tempo para serem realizadas ( ) Tratam das associações entre classes e objetos ( ) Tratam das interações e divisões de responsabilidades entre as classes ou objetos 5,1,3,2,4 4,1,5,3,2 4,5,1,2,3 5,1,3,4,2 1,5,2,3,4 1a Questão (CESGRANRIO - 2009) Por motivo de segurança, deseja-se adicionar registro (log) das operações efetuadas no sistema de contabilidade de uma empresa. O arquiteto do sistema decide que deve existir somente uma instância de uma classe de registro (log) e que esta será o ponto de acesso global para os demais componentes do sistema. Que padrão de projeto pode ser utilizado nesse caso? Visitor. Iterator. Bridge. Memento. Singleton. Respondido em 05/05/2020 17:19:52 2a Questão Qual padrão especifica os tipos de objetos a serem criados usando uma instância-protótipo e cria novos objetos pela cópia desse protótipo? Prototype. Singleton. Nenhuma das anteriores. Abstract Factory. Factory Method. Respondido em 05/05/2020 17:20:54 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. 3a Questão Sobre o padrão ¿Builder ¿, escolha a opção que descreve seu(s) objetivo(s): Separar a construção de um objeto que seja bem simples de sua representação para que o mesmo processo de construção possa criar representações iguais. Concatenar a construção de um objeto complexo de sua representação para que o mesmo processo de construção possa criar representações diferentes. Separar a construção de um objeto complexo de sua representaçãopara que o mesmo processo de construção possa criar representações diferentes. Separar a construção de um objeto complexo de sua representação para que o mesmo processo de separação criar representações iguais mas com serviços diferentes. Unir a construção e implementação, de um objeto complexo, de sua representação para que o mesmo processo de instanciação possa criar representações diferentes. Respondido em 05/05/2020 17:21:00 Explicação: 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. 4a Questão 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. SINGLETON. MEDIATOR. BUILDER. PROTOTYPE. FACTORY METHOD. Respondido em 05/05/2020 17:21:10 Explicação: Há três grupos de padrões GoF: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais: Os padrões de criação GoF contemplam 5 (cinco) tipos de padrões: Abstract Factory, Builder, Factory Method, Prototype e Singleton. 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 Prototype por definição ¿Especifica os tipos de objetos a serem criados usando uma instância como protótipo e criar novos objetos ao copiar este protótipo¿. Declara um método chamado clone na superclasse abstrata do modelo (Prototype). 5a Questã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¿ Adapter Prototype Bridge Singleton nenhuma das alternativas Respondido em 05/05/2020 17:21:31 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) 6a Questão (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: 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. 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. 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. 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. Respondido em 05/05/2020 17:21:39 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. 7a Questão O padrão Builder é um Padrão de Criação GoF. Com relação aos seus objetivos podemos afirmar que: I- O padrão Builder é um padrão utilizado na instanciação de objetos complexos. II- O padrão Builder tem a função de tentar minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor. III- O padrão Builder é bastante útil para guardar o estado de um objeto em determinados momentos. Est(á)ão correta(s) a(s) afirmativa(s): Somente o item I; Somente os itens II e III; Somente os itens I e III; Somente o item II; Somente os itens I e II; Respondido em 05/05/2020 17:21:52 Explicação: O item III está errado porque ela se refere ao padrão Prototype. 8a Questão Acerca dos padrões de criação e de padrões estruturais, assinale a opção correta. 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. Uma das consequências do uso do padrão Prototype é o aumento no uso de subclasses. São participantes do padrão Façade: o cliente, o alvo, o adaptador e o adaptado. São exemplos de padrões estruturais: Adapter, Façade, Proxy, Composite, Decorator e Chain of Responsibility. O padrão adaptador de classe (class adapter) facilita acomodar a adaptação de subclasses de uma classe previamente adaptada. 1a Questão ¿Os padrões de criação abstraem o processo de instanciação. Um padrão de criação de classe usa a herança para variar a classe que é instanciada, enquanto que um padrão de criação de objeto delegará a instanciação para outro objeto.¿ Padrões Projeto, 1º edição/2000.Gamma. Segundo Metsker, 2004, o padrão de projeto _____________________ tem como solução mover a lógica de construção de uma classe para um objeto externo, a fim de reduzir a complexidade da mesmae permitir a construção gradual de objetos-alvo a partir dessa classe. Escolha uma das alternativas abaixo que preenche corretamente a lacuna apresentada na descrição acima. Facade Singleton Abstract Factory Builder Factory Method Respondido em 05/05/2020 17:28:09 2a Questão Qual dos padrões GOF abaixo é mais indicado quando necessitamos criar objetos de uma determinada classe, os quais só têm alguns poucos estados possíveis e é melhor copiá- los e aproveitar o seu estado atual do que criar um novo objeto no estado inicial. Decorator Singleton Builder Prototype Abstract Factory Respondido em 05/05/2020 17:28:16 3a Questão O padrão de projeto singleton é usado para restringir: as relações entre classes e objetos. a instanciação de uma classe para apenas um objeto. a quantidade de classes classes de atributos complexos a instanciação de uma classe para objetos simples. Respondido em 05/05/2020 17:30:18 Explicação: Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. 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. 4a Questão Qual é o padrão GoF criacional correspondente ao código abaixo? public static void main(String[] args) { ObraPadrao obraPadrao = new ObraPadrao(); ObraPadrao obraNova = obraPadrao.clonar(); obraNova.setValor(20000 0.0); ..... ..... Singleton Factory Method Adapter Prototype Builder Respondido em 05/05/2020 17:49:04 Explicação: 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) 5a Questão Qual o objetivo do padrão Builder? Assinale a opção INCORRETA. Separar a construção de um objeto complexo da sua representação de modo que o mesmo processo de construção possa criar diferentes representações. Atribuir a responsabilidade de criação do objeto complexo a outra classe. Minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor. Declara um método chamado clone na superclasse abstrata do modelo. É utilizado na instanciação de objetos complexos. Respondido em 05/05/2020 18:06:59 Explicação: Essa afirmativa está INCORRETA porque ela se refere ao padrão Prototype. 6a Questão O padrão Singleton é um Padrão de Criação GoF. A grande vantagem deste padrão é: Assinale a única resposta CORRETA. Difícil de testar (simulações dependem de instância extra); Difícil ou impossível de implementar em ambiente distribuído; Acesso central e extensível a recursos e objetos; Criação "preguiçosa" é complicada em ambiente multithreaded; Qualidade da implementação depende da linguagem; Respondido em 05/05/2020 18:07:11 Explicação: Esta afirmativa é CORRETA porque as outras dizem respeito a desvantagens do padrão Singletos. 7a Questão Analise as afirmativas abaixo, com relação aos padrões de projeto, e marque a opção correta. I - O Singleton é um padrão que garante que uma classe tenha apenas uma instância. II - Alguns padrões de criação como o Prototype, o Proxy e o Façade não são adequados para a programação orientada a objetos. III - Adapter é um padrão estrutural utilizado para compatibilizar interfaces de modo que elas possam interagir. Todas as afirmativas estão corretas Apenas I e III estão corretas Todas as afirmativas estão incorretas Apenas I e II estão corretas Apenas I está correta Respondido em 05/05/2020 18:07:20 Explicação: O item II está errado porque 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. 8a Questão O padrão Singleton é um Padrão de Criação GoF. A estrutura desse padrão utiliza alguns recursos. Assinale o único recurso que NÃO pertence a esse padrão. Declarar o método getInstance como synchronized para que o método seja executado por uma thread por vez, quando utilizado em programas multi- thread; Modificadores static e private para garantir uma mesma instância para todos os objetos criados e evitar acesso público; Construtor da classe privado, para não permitir a instância de novos objetos da classe; Modificar static para implementar o método getInstance e, assim, retornar a instancia apropriada ou criá-la, caso seja a primeira vez; Modificando as aplicações para este padrão de projeto para que a facilidade de instanciar classes em tempo de execução possa acontecer; 1a Questão ¿Os padrões de criação abstraem o processo de instanciação. Um padrão de criação de classe usa a herança para variar a classe que é instanciada, enquanto que um padrão de criação de objeto delegará a instanciação para outro objeto.¿ Padrões Projeto, 1º edição/2000.Gamma. Segundo Metsker, 2004, o padrão de projeto _____________________ tem como solução mover a lógica de construção de uma classe para um objeto externo, a fim de reduzir a complexidade da mesma e permitir a construção gradual de objetos-alvo a partir dessa classe. Escolha uma das alternativas abaixo que preenche corretamente a lacuna apresentada na descrição acima. Abstract Factory Factory Method Facade Singleton Builder Respondido em 05/05/2020 23:53:10 2a Questão O padrão Singleton é um Padrão de Criação GoF. A estrutura desse padrão utiliza alguns recursos. Assinale o único recurso que NÃO pertence a esse padrão. Declarar o método getInstance como synchronized para que o método seja executado por uma thread por vez, quando utilizado em programas multi- thread; Construtor da classe privado, para não permitir a instância de novos objetos da classe; Modificadores static e private para garantir uma mesma instância para todos os objetos criados e evitar acesso público; Modificar static para implementar o método getInstance e, assim, retornar a instancia apropriada ou criá-la, caso seja a primeira vez; Modificando as aplicações para este padrão de projeto para que a facilidade de instanciar classes em tempo de execução possa acontecer; Respondido em 05/05/2020 23:53:52 Explicação: Esta afirmativa NÃO pertence ao padrão Singleton, porque está relacionada ao padrão Prototype. 3a Questão O padrão Singleton é um Padrão de Criação GoF. A grande vantagem deste padrão é: Assinale a única resposta CORRETA. Qualidade da implementação depende da linguagem; Difícil de testar (simulações dependem de instância extra); Acesso central e extensível a recursos e objetos; Criação "preguiçosa" é complicada em ambiente multithreaded; Difícil ou impossível de implementar em ambiente distribuído; Respondido em 05/05/2020 23:54:34 Explicação:Esta afirmativa é CORRETA porque as outras dizem respeito a desvantagens do padrão Singletos. 4a Questão Qual dos padrões GOF abaixo é mais indicado quando necessitamos criar objetos de uma determinada classe, os quais só têm alguns poucos estados possíveis e é melhor copiá- los e aproveitar o seu estado atual do que criar um novo objeto no estado inicial. Builder Prototype Decorator Abstract Factory Singleton Respondido em 05/05/2020 23:54:52 5a Questão O padrão de projeto singleton é usado para restringir: a instanciação de uma classe para objetos simples. classes de atributos complexos a instanciação de uma classe para apenas um objeto. a quantidade de classes as relações entre classes e objetos. Respondido em 05/05/2020 23:54:56 Explicação: Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. 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. 6a Questão Qual é o padrão GoF criacional correspondente ao código abaixo? public static void main(String[] args) { ObraPadrao obraPadrao = new ObraPadrao(); ObraPadrao obraNova = obraPadrao.clonar(); obraNova.setValor(20000 0.0); ..... ..... Prototype Adapter Builder Singleton Factory Method Respondido em 05/05/2020 23:55:08 Explicação: 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) 7a Questão Analise as afirmativas abaixo, com relação aos padrões de projeto, e marque a opção correta. I - O Singleton é um padrão que garante que uma classe tenha apenas uma instância. II - Alguns padrões de criação como o Prototype, o Proxy e o Façade não são adequados para a programação orientada a objetos. III - Adapter é um padrão estrutural utilizado para compatibilizar interfaces de modo que elas possam interagir. Apenas I e III estão corretas Todas as afirmativas estão incorretas Apenas I está correta Apenas I e II estão corretas Todas as afirmativas estão corretas Respondido em 05/05/2020 23:55:25 Explicação: O item II está errado porque 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. 8a Questão (CESGRANRIO - 2010) Em um sistema de software para controlar pedidos para entrega em domicílio, deve haver uma funcionalidade que permita que o atendente solicite a repetição de um pedido anteriormente feito por um cliente. O gerente do restaurante informou que essa funcionalidade aumentaria a agilidade no atendimento aos clientes, visto que muitos deles tendem a fazer pedidos similares aos que já fizeram anteriormente. Ao usar essa funcionalidade, o atendente do restaurante seleciona um pedido cuja composição corresponde a produtos normalmente requisitados pelos clientes e solicita ao sistema a construção de um novo pedido igual ao selecionado. Esse novo pedido pode, então, ser alterado pelo atendente se o cliente solicitar a adição de novos produtos do cardápio, por exemplo. Portanto, a parte principal dessa funcionalidade corresponde a criar uma cópia de um pedido a partir de pedido preexistente. Na implementação dessa funcionalidade, seu desenvolvedor deve utilizar qual padrão de projeto do catálogo GoF (Gang of Four), dentre os listados abaixo? Abstract Factory. Builder. Factory Method. Command. Prototype. 1a Questão Qual padrão separa a construção de um objeto complexo da sua representação de modo que o mesmo processo de construção possa criar diferentes representações? Singleton. Factory Method. Builder. Prototype. Nenhuma das anteriores. Respondido em 05/05/2020 23:55:59 Explicação: Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. O padrão Builder tenta minimizar a carga que os desenvolvedores tem ao ato de criar objetos dentro de um construtor. Isso é comum em desenvolvedores iniciantes. 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. 2a Questão Dentre as opções apresentadas para o padrão Prototype, no que se refere, as aplicações para este padrão de projeto, assinale a única que estrá correta. facilidade de eliminar classes em tempo de execução; facilidade de instanciar classes em tempo de programação; facilidade de instanciar classes em tempo de geração do SGDB facilidade de copiar classes em tempo de execução. facilidade de instanciar classes em tempo de execução. Respondido em 05/05/2020 23:56:04 Gabarito Coment. 3a Questão Assinale dentre as opções abaixo, qual o padrão de projeto mais conhecidos e extensivamente utilizados em programação orientada a objetos e que está direcionado para as situações onde é preciso manter uma única instancia de uma classe durante toda a execução da aplicação. Singleton Prototipe: Composite; Decorator; Builder; Respondido em 05/05/2020 23:56:26 Gabarito Coment. 4a Questão 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): Somente o item II; Somente os itens II e III; Somente os itens I e II; Somente os itens I e III; Somente o item I; Respondido em 05/05/2020 23:58:57 Explicação: Os itens I e III estão errados porque eles se referem ao padrão Prototype. 5a Questão O padrão de projeto Singleton é usado para restringir: Um Classes de atributos complexos. As relações entre classes e objetos A quantidade de classes. São A instanciação de uma classe para objetos simples. A instanciação de uma classe para apenas um objeto Respondido em 05/05/2020 23:59:02 Explicação: Os padrões de criação são aqueles que abstraem e ou adiam o processo criação dos objetos. Eles ajudam a tornar um sistema independente de como seus objetos são criados, compostos e representados. 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 durantetoda 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. Na linguagem Java os modificadores states e private devem garantir uma mesma instância para todos os objetos criados e evitar acesso público. 6a Questão 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: somente a i somente a ii somente a iii somente a i e ii somente a ii e iii Respondido em 05/05/2020 23:59:10 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. 7a Questão O padrão de projeto Singleton é usado para restringir: A instanciação de uma classe para objetos simples. A instanciação de uma classe para apenas um objeto. A quantidade de classes. As relações entre classes e objetos. Classes de atributos complexos. Respondido em 05/05/2020 23:59:01 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. 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. Na linguagem Java os modificadores states e private devem garantir uma mesma instância para todos os objetos criados e evitar acesso público. 8a Questão O padrão Prototype é um Padrão de Criação GoF. Com relação aos seus objetivos podemos afirmar que: I- O padrão de projeto Prototype declara um método chamado clone na superclasse abstrata do modelo. II- O padrão Prototype tem a função de tentar minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor. III- O padrão Prototype é bastante útil para guardar o estado de um objeto em determinados momentos. Est(á)ão correta(s) a(s) afirmativa(s): Somente o item II; Somente os itens II e III; Somente os itens I e II; Somente os itens I e III; Somente o item I; 1a Questão Sobre o padrão ¿Builder ¿, escolha a opção que descreve seu(s) objetivo(s): Separar a construção de um objeto complexo de sua representação para que o mesmo processo de separação criar representações iguais mas com serviços diferentes. Concatenar a construção de um objeto complexo de sua representação para que o mesmo processo de construção possa criar representações diferentes. Separar a construção de um objeto que seja bem simples de sua representação para que o mesmo processo de construção possa criar representações iguais. Unir a construção e implementação, de um objeto complexo, de sua representação para que o mesmo processo de instanciação possa criar representações diferentes. Separar a construção de um objeto complexo de sua representação para que o mesmo processo de construção possa criar representações diferentes. Respondido em 06/05/2020 23:00:30 Explicação: 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. 2a Questão Acerca dos padrões de criação e de padrões estruturais, assinale a opção correta. 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. São participantes do padrão Façade: o cliente, o alvo, o adaptador e o adaptado. 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 exemplos de padrões estruturais: Adapter, Façade, Proxy, Composite, Decorator e Chain of Responsibility. Respondido em 06/05/2020 23:00:37 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. 3a Questão (CESGRANRIO - 2010) Em um sistema de software para controlar pedidos para entrega em domicílio, deve haver uma funcionalidade que permita que o atendente solicite a repetição de um pedido anteriormente feito por um cliente. O gerente do restaurante informou que essa funcionalidade aumentaria a agilidade no atendimento aos clientes, visto que muitos deles tendem a fazer pedidos similares aos que já fizeram anteriormente. Ao usar essa funcionalidade, o atendente do restaurante seleciona um pedido cuja composição corresponde a produtos normalmente requisitados pelos clientes e solicita ao sistema a construção de um novo pedido igual ao selecionado. Esse novo pedido pode, então, ser alterado pelo atendente se o cliente solicitar a adição de novos produtos do cardápio, por exemplo. Portanto, a parte principal dessa funcionalidade corresponde a criar uma cópia de um pedido a partir de pedido preexistente. Na implementação dessa funcionalidade, seu desenvolvedor deve utilizar qual padrão de projeto do catálogo GoF (Gang of Four), dentre os listados abaixo? Factory Method. Builder. Abstract Factory. Command. Prototype. Respondido em 06/05/2020 23:00:44 4a Questão Qual padrão separa a construção de um objeto complexo da sua representação de modo que o mesmo processo de construção possa criar diferentes representações? Nenhuma das anteriores. Factory Method. Prototype. Builder. Singleton. Respondido em 06/05/2020 23:01:05 Explicação: Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. O padrãoBuilder tenta minimizar a carga que os desenvolvedores tem ao ato de criar objetos dentro de um construtor. Isso é comum em desenvolvedores iniciantes. 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. 5a Questão 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. SINGLETON. FACTORY METHOD. BUILDER. MEDIATOR. FACADE. Respondido em 06/05/2020 23:01:13 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. 6a Questão O padrão de projeto singleton é usado para restringir: a instanciação de uma classe para objetos simples. as relações entre classes e objetos. classes de atributos complexos a quantidade de classes a instanciação de uma classe para apenas um objeto. Respondido em 06/05/2020 23:01:24 Explicação: Há cinco Padrões de Criação GoF: Abstract Factory, Builder, Factory Method, Prototype e Singleton. 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. 7a Questão O padrão Singleton é um Padrão de Criação GoF. A grande vantagem deste padrão é: Assinale a única resposta CORRETA. Difícil de testar (simulações dependem de instância extra); Qualidade da implementação depende da linguagem; Acesso central e extensível a recursos e objetos; Difícil ou impossível de implementar em ambiente distribuído; Criação "preguiçosa" é complicada em ambiente multithreaded; Respondido em 06/05/2020 23:01:13 Explicação: Esta afirmativa é CORRETA porque as outras dizem respeito a desvantagens do padrão Singletos. 8a Questão O padrão de projeto Singleton é usado para restringir: A instanciação de uma classe para objetos simples. A instanciação de uma classe para apenas um objeto. Classes de atributos complexos. As relações entre classes e objetos. A quantidade de classes. 1a Qu estão Acerto: 0,0 / 1,0 Observando o diagrama de classes abaixo, verificamos a aplicação de um padrão de criação GOF. Qual padrão foi utilizado para organizar as classes? Singleton Strategy State Template Method Abstract Factory Respondido em 06/05/2020 23:05:31 2a Qu estão Acerto: 0,0 / 1,0 Qual padrão garante que uma classe tem somente uma instância e fornece um ponto global de acesso a mesma? Builder. Singleton. Factory Method. Nenhuma das anteriores. Abstract Factory. Respondido em 06/05/2020 23:05:40 3a Qu estão Acerto: 1,0 / 1,0 A classe java.util.Map da API de coleções de Java permite que sejam armazenados pares de objetos (chave e valor) em uma de suas implementações (as mais conhecidas são HashMap e TreeMap). No entanto, estas classes não possuem um construtor que receba como parâmetro uma matriz de duas linhas e que monte o mapa usando a primeira linha como chave e a segunda como coluna. Qual padrão utilizar para resolver o problema acima? Chain of Responsibility Adapter Iterator Interpreter Observer Respondido em 06/05/2020 23:05:44 4a Qu estão Acerto: 0,0 / 1,0 Dado o diagrama de classe identifique o padrão GoF estrutual Flyweight Bridge Proxy Adapter Decorator Respondido em 06/05/2020 23:06:01 5a Qu estão Acerto: 1,0 / 1,0 Qual o objetivo do padrão Interpreter? Assinale a opção CORRETA. Definir o esqueleto de um algoritmo dentro de uma operação, deixando alguns passos a serem preenchidos pelas subclasses; Dada uma linguagem, definir uma representação para sua gramática junto com um interpretador que usa a representação para interpretar sentenças na linguagem; Permitir que suas subclasses redefinam certos passos de um algoritmo sem mudar sua estrutura; Preencher certas partes do algoritmo por implementações que irão variar, ou seja, implementar um algoritmo em um método, postergando a definição de alguns passos do algoritmo, para que outras classes possam redefini- los; Fornece uma estrutura fixa, de um algoritmo, esta parte fixa deve estar presente na superclasse, sendo obrigatório uma classeAbstrata que possa conter um método concreto; Respondido em 06/05/2020 23:06:54 6a Qu estão Acerto: 0,0 / 1,0 (FCC - 2010) Em relação aos padrões de projetos orientados a objetos, separar dados ou lógica de negócios da interface do usuário e do fluxo da aplicação para permitir que uma mesma lógica de negócios possa ser acessada e visualizada através de várias interfaces, sem saber de quantas nem quais interfaces com o usuário estão exibindo seu estado, é característica do padrão de projeto arquitetural Creator. Model-View-Controller. Expert. Layers. Observer. Respondido em 06/05/2020 23:07:05 7a Qu estão Acerto: 0,0 / 1,0 Marque a alternativa que está relacionada com o padrão de projeto que permite definir uma nova operação sem mudar as classes dos elementos sobre os quais opera. State Memento Visitor Strategy Observer Respondido em 06/05/2020 23:07:06 Gabarito Coment. 8a Qu estão Acerto: 1,0 / 1,0 Uma classe com acoplamento forte depende muito de outras classes. Isso pode conduzir os seguintes problemas num sistema: I. As classes são difíceis de aproveitar tendo em vista que sempre que uma classe for utilizada todas as outras das quais ela depende devem estar presentes; II. As alterações nas classes relacionadas podem forçar mudanças locais difíceis de compreender isoladamente. III. Facilidade na compreensão nas mudanças das classes no sistema. IV. Ao fazer alguma mudança numa classe também devem ser feitas mudanças nas outras que estão ligadas a esta classe. Com base nestas informações assinale a alternativa CORRETA. II, III, IV Somente a III. I, II, IV I, III, IV I, II, III Respondido em 06/05/2020 23:07:09 9a Qu estão Acerto: 0,0 / 1,0 O Paradigma Orientado a Objetos com os padrões de responsabilidades GRASP definem que a melhor técnica de programação POO é: Desenvolver as classes com a maior coesão e menor acoplamento possível. Desenvolver as classes sem coesão e com acoplamento. Desenvolver as classes com a maior coesão e maior acoplamento possível. Desenvolver as classes com a menor coesão e menor acoplamento possível. Desenvolver as classes com a menor coesão e maior acoplamento possível. Respondido em 06/05/2020 23:07:12 10a
Compartilhar