Baixe o app para aproveitar ainda mais
Prévia do material em texto
1a Questão O padrão Flyweight é um Padrão Estrutural GoF. Qual o melhor momento em que podemos usar esse padrão? I- Quando o tamanho do conjunto de objetos for significativamente menor que a quantidade de vezes em que eles são usados na aplicação. II- Quando objetos podem ser usados em diferentes contextos ao mesmo tempo (agindo sempre como um objeto independente). III- Quando for necessário elaborar um algoritmo ou algo complicado para separar objetos mutáveis de imutáveis. Est(á)ão correta(s) a(s) afirmativa(s): Somente os itens I e II; Somente o item I; Somente os itens II e III; Somente o item II; Somente os itens I e III; Respondido em 11/06/2019 00:21:54 Explicação: O item III está errado porque não devemos usar esse padrão quando isso ocorre. 2a Questão O objetivo do padrão Flyweight é diminuir o consumo de memória, porém deve ser utilizado com cautela; Gamma et al (2000). São várias as recomendações para seu uso. Analise as alternativas abaixo e marque a alternativa que NÃO se refere a uma recomendação para uso do padrão Flyweight. Os custos de armazenamento são altos por causa da grande quantidade de objetos. O cliente não precisar conhecer as regras do negócio. A aplicação não depende da identidade do objeto. Uma aplicação utiliza um grande número de objetos. Muitos grupos de objetos podem ser substituídos por relativamente poucos objetos compartilhados, uma vez que estados extrínsecos são removidos. Respondido em 11/06/2019 00:22:43 Gabarito Coment. 3a Questão A utilização do padrão estrutural de projeto cula ideia é utilizar um substituto para o objeto real, mantendo a mesma interface do original sempre que for inconveniente, ou indesejável, acessá-lo diretamente é conhecido como: Flyweight Proxy; Decorator; Composite. Façade; Respondido em 11/06/2019 00:23:48 4a Questão A classe Façade, em qualquer contexto, tem como objetivo mais amplo buscar respostas para um problema de forma transparente em um conjunto de subsistemas e fornecer uma resposta imediata. Marque a alternativa que NÃO indica uma vantagem do padrão Façade (Fachada) Ajudar a melhorar portabilidade dos sistemas. Fazer com que o cliente conheça todas as regras de negócio para que possa realizar as mudanças. Incentivar acoplamento fraco entre o subsistema e seus clientes. Tornar os clientes independentes da complexidade dos diferentes subsistemas de uma aplicação. Simplificar o acesso a determinadas funcionalidades de um subsistema, sem inviabilizar sua utilização direta. Respondido em 11/06/2019 00:24:05 Gabarito Coment. 5a Questão Qual padrão de projeto tem como propósito prover interface unificada para conjunto de interfaces em um subsistema, definindo uma interface de alto-nível. Facade Decorator Strategy Singleton Factory Method Respondido em 11/06/2019 00:24:57 Explicação: O Padrão Façade é do tipo estrutural . É usado quando um sistema é muito complexo ou difícil de entender, já que possui um grande número de classes independentes ou se trechos de código fonte estão indisponíveis. Este padrão esconde as complexidades de um sistema maior e provê uma interface simplificada ao cliente. Tipicamente envolve uma única classe responsável por englobar uma série de membros requeridos pelo cliente. Estes membros acessam o sistema em nome do Façade e escondem os detalhes de implementação. 6a Questão (FESMIP-BA - 2011) O Design Patterns que tem a finalidade de usar compartilhamento para suportar grandes quantidades de objetos, de granularidade fina, de maneira eficiente, é denominado State. Composite. Builder. Flyweight. Strategy. Respondido em 11/06/2019 00:25:38 7a Questão Qual padrão fornece uma interface unificada para um conjunto de interfaces em um subsistema e define uma interface de nível mais alto que torna o subsistema mais fácil de ser usado? Façade. Adapter. Nenhuma das anteriores. Decorator. Composite. Respondido em 11/06/2019 00:26:06 Explicação: 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. O padrão Façade é um padrão Fachada, ou seja, faz uma fachada única para todas as fachadas. Define uma interface a um nível mais elevado, para tornar um subsistema mais fácil de usar. Oferece uma interface única para um conjunto de interfaces de um subsistema. Façade define uma interface de nível mais elevado que torna o subsistema mais fácil de usar. 8a Questão (FCC - 2011) No contexto dos padrões de projeto: I. Oferecer uma interface simples para uma coleção de classes. II. Desacoplar uma abstração de sua implementação para que ambas possam variar independentemente. Correspondem respectivamente a Façade e Bridge. Composite e Bridge. Façade e Composite. Bridge e Adapter. Adapter e Façade. 1a Questão Converter a interface de uma classe em outra interface esperada pelos clientes. Permite a comunicação entre classes que não poderiam trabalhar juntas devido à incompatibilidade de suas interfaces. Para qual padrão de projeto a afirmação se relaciona? Proxy Observer Singleton Memento Nra Respondido em 11/06/2019 00:27:49 2a Questão O padrão Flyweight é um Padrão Estrutural GoF. Quando não devemos usar esse padrão? I- Quando o estado dos objetos não for imutável II- Quando o tamanho do conjunto de objetos for significativamente menor que a quantidade de vezes em que eles são usados na aplicação; III- Quando objetos podem ser usados em diferentes contextos ao mesmo tempo (agindo sempre como um objeto independente); Est(á)ão correta(s) a(s) afirmativa(s): Somente o item I; Somente os itens I e II; Somente os itens I e III; Somente os itens II e III; Somente o item II; Respondido em 11/06/2019 00:28:28 Explicação: Os itens II e III estão errados porque é nesta situação que devemos usar esse padrão. No item I é preciso passar o estado mutável como parâmetro e isto pode ser impraticável se o estado consistir de vários objetos. 3a Questão Que padrão estrutural usa compartilhamento para suportar um grande número de pequenos objetos de forma eficiente. Facade Composite Decorator Flyweight Bridge Respondido em 11/06/2019 00:29:01 4a Questão O objetivo do Flyweight é diminuir o consumo de memória, porém deve ser utilizado com cautela. Gamma et al (2000) recomendam sua utilização somente quando todas as condições abaixo forem verdadeiras,EXCETO uma. Qual delas abaixo é essa situação? Os custos de armazenamento são altos por causa da grande quantidade de objetos. Quando for necessário elaborar um algoritmo ou algo complicado para separar objetos mutáveis de imutáveis; A aplicação não depende da identidade do objeto. Uma aplicação utiliza um grande número de objetos. Muitos grupos de objetos podem ser substituídos por relativamente poucos objetos compartilhados, uma vez que estados extrínsecos são removidos. Respondido em 11/06/2019 00:29:45 Explicação: Essa afirmativa está incorreta para o padrão Flyweight, porque ela é uma situação em que não deve ser usada, assim como também quando o estado dos objetos não for imutável (é preciso passar o estado mutável como parâmetro e isto pode ser impraticável se o estado consistir de vários objetos).. 5a Questão O objetivo do padrão de projeto estrutural de oFlyweight é diminuir o consumo de memória, porém deve ser utilizado com cautela; Gamma et al (2000) recomendam sua utilização somente quando todas as condições forem verdadeiras. Assinale dentre as opções abaixo a unica condição que não é verdadeira A aplicação não depende da identidade do objeto. Muitos grupos de objetos podem ser substituídos por relativamente poucos objetos compartilhados, uma vez que estados extrínsecos são removidos. Uma aplicação utiliza um pequeno número de objetos. Os custos de armazenamento são altos por causa da grande quantidade de objetos. Uma aplicação utiliza um grande número de objetos. Respondido em 11/06/2019 00:30:42 Gabarito Coment. 6a Questão (CESGRANRIO - 2009) O presidente de uma empresa determinou que fosse disponibilizado um sistema de vendas na Internet. No entanto, o software de controle de estoque que deve ser acessado pela aplicação de vendas é muito antigo e provê uma API (Application Programming Interface) de uso muito complicado. Para que os desenvolvedores possam acessar uma interface mais simples, o arquiteto do sistema pode determinar o uso do padrão de projeto Façade. Observer. Decorator. Flyweight. Prototype. Respondido em 11/06/2019 00:31:57 7a Questão Estruturar um sistema em subsistemas ajuda a reduzir a complexidade do problema (Gamma et al., 2000). No entanto, um objetivo comum de todos os projetos é minimizar a comunicação e as dependências entre os diferentes subsistemas. Uma das maneiras de contornar esse problema é utilizar o padrão de projeto que qual forneça uma interface única e simplificada para os recursos e facilidades mais gerais de um subsistema. Este padrão de projeto é conhecido como: Proxy; Façade; Flyweight Composite; Decorator Respondido em 11/06/2019 00:32:41 Gabarito Coment. 8a Questão Qual a vantagem do padrão Proxyr? Assinale a opção INCORRETA. Tem transparência, ou seja, mesma sintaxe usada na comunicação entre o cliente e sujeito real é usada no proxy; Consigo atribuir um certo grau de inteligência, o que possibilitaria um tratamento inteligente dos dados; Permite o tratamento inteligente dos dados no cliente; Permite maior eficiência com caching no cliente; Permite, sempre que for desejável, criar uma interface para um conjunto de objetos com o objetivo de facilitar o uso da aplicação; Respondido em 11/06/2019 00:33:18 Explicação: Essa afirmativa está incorreta, porque ela se refere ao padrão Façade. 1a Questão considerando a classe de projetos GoF assinale a opção cujos padrões de projeto estão todos classificados como Estruturais: singleton; bridge ; composite; decorator ; faça de ; flyweight;¿ Proxy adapter ; bridge ; composite ; decorator ; faça de ; flyweight ; Proxy adapter ; bridge ; protype ¿ decorator ; faça de ; flyweight ; singleton adapter ; bridge ; composite ; decorator ; faça de ; flyweight ; singleton singleton; bridge ; protype; decorator ; faça de ; flyweight ; Proxy Respondido em 11/06/2019 00:34:16 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 estruturais GoF contemplam 7 (sete) tipos de padrões: Adapter, Bridge, Composite, Decorator, Façade, Flyweight e Proxy. 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. Seu objetivo é definir caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mútua. 2a Questão O padrão _________________ controla o acesso ao objeto original. Fornece um substituto ou marcador da localização de outro objeto para controlar o seu acesso. Qual padrão abaixo corresponde ao descrito acima? Proxy Memento Interpreter Singleton Adapter Respondido em 11/06/2019 00:34:41 Explicação: O padrão Proxy (procurador) controla o acesso a um objeto através de outro objeto, que atua como seu substituto, ou como um envoltório. 3a Questão Dado o diagrama de classe identifique o padrão GoF estrutual Bridge Decorator Adapter Proxy Flyweight Respondido em 11/06/2019 00:35:08 4a Questão Qual o objetivo do padrão Proxyr? Assinale a opção CORRETA. Proxy oferece uma interface única para um conjunto de interfaces de um subsistema; Proxy expurga o código e delega a uma classe, a terceiros; Proxy define uma interface de nível mais elevado que torna o subsistema mais fácil de usar; Proxy faz uma fachada única para todas as fachadas; Proxy prove um substituto ou ponto através do qual um objeto possa controlar o acesso a outro; Respondido em 11/06/2019 00:35:33 Explicação: Essa afirmativa está correta, porque as outras se referem ao padrão Façade. 5a Questão O Padrão Flyweight é um objeto compartilhado, que pode ser usado em vários contextos, simultaneamente, pois, tem capacidade de funcionar de forma independente em cada contexto. Seus métodos e implementações não podem, em momento algum, fazer _____________________________________________________________ comparações ou associações sobre o contexto no qual o objeto opera. hipóteses ou asserções sobre fora do contexto no qual o objeto opera. Acoplamento fraco entre o subsistema e seus clientes. hipóteses ou asserções sobre o contexto no qual o objeto opera. hipóteses ou exclusões sobre o contexto no qual o objeto opera. Respondido em 11/06/2019 00:36:12 Gabarito Coment. 6a Questão Uma empresa tem, dentre outros, um sistema de vendas e outro de controle de estoque. Supondo que o sistema de vendas necessita utilizar funcionalidades do sistema de controle de estoque, qual padrão deve ser utilizado para que estas funcionalidades sejam disponibilizadas? Singleton Decorator Fachada Observer Fábrica Abstrata Respondido em 11/06/2019 00:36:49 Explicação: 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. O padrão Façade (fachada) é um padrão Fachada, ou seja, faz uma fachada única para todas as fachadas, ou seja, Fornece uma interface unificada para um conjunto de objetos que constituem um subsistema.define uma interface a um nível mais elevado, para tornar um subsistema mais fácil de usar. Oferece uma interface única para um conjunto de interfaces de um subsistema. Façade define uma interface de nível mais elevado que torna o subsistema mais fácil de usar. 7a Questão (BNDES - CESGRANRIO 2009) O presidente de uma empresa determinou que fosse disponibilizado um sistema de vendas na Internet. No entanto, o software de controle de estoque que deve ser acessado pela aplicação de vendas é muito antigo e provê uma API (Application Programming Interface) de uso muito complicado. Para que os desenvolvedores possam acessar uma interface mais simples, o arquiteto do sistema pode determinar o uso do padrão de projeto Observer. Decorator. Flyweight. Prototype. Façade. Respondido em 11/06/2019 00:37:15 8a Questão A classe Façade, em qualquer contexto, tem como objetivo mais amplo buscar respostas para um problema de forma transparente em um conjunto de subsistemas e fornecer uma resposta imediata para a classe cliente. Assinale dentre as principais vantagens desse padrão de projeto a única que não é verdadeira.: judar a melhorar portabilidade dos sistemas. Incentivar acoplamento forte entre o subsistema e seus clientes. Tornar os clientes independentes da complexidade dos diferentes subsistemas de uma aplicação. Incentivar acoplamento fraco entre o subsistema e seus clientes. Simplificar o acesso a determinadas funcionalidades de um subsistema, sem inviabilizar sua utilização direta. 1a Questão Quanto às vantagens, assinale a opção INCORRETA sobre o padrão Façade. Permite que objetos individuais cuidem de uma única tarefa, deixando que a fachada se encarregue de divulgar as suas operações; Havendo mudança em alguma regra de negócio, basta realizar as alterações necessárias na classe Façade; Sempre que for desejável, cria uma interface para um conjunto de objetos com o objetivo de facilitar o uso da aplicação; O cliente não precisa conhecer todas as regras de negócio envolvidas com a concessão de um empréstimo; Quando o tamanho do conjunto de objetos for significativamente menor que a quantidade de vezes em que eles são usados na aplicação; Respondido em 11/06/2019 00:38:43 Explicação: Essa afirmativa está incorreta, porque ela se refere ao padrão Flyweight. 2a Questão Em muitas situações de programação, é possível resolver o problema de acesso a um determinado objeto com a utilização de uma referência a variável desejada, este é um mecanismo de simples utilização e bastante conhecido pelos desenvolvedores de software. No entanto, quando é necessário utilizar um mecanismo mais versátil e sofisticado, por exemplo, - para postergar a instanciação de um objeto - para controlar o acesso ao mesmo - para acessá-lo em uma máquina remota - para gravá-lo em uma base de dados, a alternativa de utilizar uma referência ao objeto não é mais apropriada. - utilização de uma superclasse abstrata para definir a interface da classe desejada e uma classe derivada adicional derivada. Marque a alternativa que indica o padrão de projeto utilizado segundo a descrição acima. Façade Coesão Proxy Flyweight Acoplamento Respondido em 11/06/2019 00:39:01 Gabarito Coment. 3a Questão Qual padrão usa compartilhamento para suportar eficientemente grandes quantidades de objetos de granularidade fina? Flyweight. Façade. Composite. Nenhuma das anteriores. Bridge. Respondido em 11/06/2019 00:39:26 Explicação: Os Padrões Estruturais GoF contemplam 7 (sete) tipos de padrões: Adapter, Bridge, Composite, Decorator, Façade, Flyweight e Proxy. Flyweight é um padrão de projeto de software apropriado quando vários objetos devem ser manipulados em memória sendo que muitos deles possuem informações repetidas. Dado que o recurso de memória é limitado, é possível segregar a informação repetida em um objeto adicional que atenda as características de imutabilidade e comparabilidade (que consiga ser comparado com outro objeto para determinar se ambos carregam a mesma informação). 4a Questão Que padrão estrutural provê um ponto de atendimento para que outro objeto possa controlar o acesso ao primeiro: Decorator Proxy Adapter Flyweight Facade Respondido em 11/06/2019 00:39:46 5a Questão Qual o padrão fornece um substituto ou marcador para controlar o acesso a um objeto? Nenhuma das anteriores. Adapter. Proxy. Façade. Bridge. Respondido em 11/06/2019 00:40:08 Explicação: 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. O padrão Proxy (procurador) controla o acesso a um objeto através de outro objeto, que atua como seu substituto, ou como um envoltório. 6a Questão Quanto aos padrões de projeto orientados a objetos, assinale a opção correta. Pode-se usar o Builder quando o comportamento de um objeto muda em tempo de execução e depende do seu estado; as operações têm múltiplos enunciados condicionais que dependem do estado do objeto. Pode-se usar o Decorator quando um sistema deve ser configurado com uma entre várias famílias de produtos; uma família de produtos relacionados foi projetada para ser usada em conjunto. O Adapter pode ser usado quando objetos se comunicam de forma definida, mas complexa; as interdependências entre os objetos são difíceis de entender; o reúso está sendo dificultado, pois um objeto se comunica com vários outros. O padrão Abstract Factory visa possibilitar que os passos para se criar um objeto complexo independam das partes que compõem esse objeto. Ao encapsular a construção de objetos complexos, esse padrão contribui na modularização do sistema. O Façade pode ser usado quando se deseja prover uma interface simples para um subsistema complexo; existem muitas dependências entre clientes e as classes que implementam uma abstração. Respondido em 11/06/2019 00:40:34 Explicação: Essa opção está correta porque o padrão Façade (fachada) é um padrão Fachada, ou seja, faz uma fachada única para todas as fachadas, ou seja, Fornece uma interface unificada para um conjunto de objetos que constituem um subsistema.define uma interface a um nível mais elevado, para tornar um subsistema mais fácil de usar. Oferece uma interface única para um conjunto de interfacesde um subsistema. Façade define uma interface de nível mais elevado que torna o subsistema mais fácil de usar. Define uma interface de mais alto nível que torna o subsistema mais fácil de usar. 7a Questão Os padrões de projetos, quando aplicados ao desenvolvimento de aplicações, fornecem meios de descrever soluções comuns para problemas comuns, resultando em redução de tempo gasto com o desenvolvimento e melhoria da qualidade da aplicação. (FCC - 2009) Analise: I. É o responsável pela especificação dos tipos de objetos a serem criados usando uma "instância" prototípica e pela criação de novos objetos copiando este protótipo. II. Define uma interface de nível mais alto que torna o subsistema mais fácil de usar e fornece uma interface única para um subsistema com diversas interfaces; compõe o grupo de padrões estruturais. III. Integrante do grupo de padrões comportamentais, ele provê uma forma de acessar sequencialmente os elementos de um agregado de objetos, sem expor a representação interna desse agregado. IV. As consequências do uso deste padrão é que o encapsulamento é mantido, já que objetos usam sua própria informação para cumprir responsabilidades; leva ao fraco acoplamento entre objetos e à alta coesão, uma vez que objetos fazem tudo que é relacionado à sua própria informação. As afirmações correspondem, respectivamente, aos padrões Controller, Expert, Singleton e Prototype. Command, Iterator, Singleton e Expert. Adapter, Façade, Command e Iterator. Prototype, Façade, Iterator e Expert. Command, Singleton, Controller e Façade. Respondido em 11/06/2019 00:41:19 8a Questão Qual padrão de projeto tem como propósito prover interface unificada para conjunto de interfaces em um subsistema, definindo uma interface de alto-nível. Facade Factory Method Singleton Decorator Strategy Respondido em 11/06/2019 00:41:37 Explicação: O Padrão Façade é do tipo estrutural . É usado quando um sistema é muito complexo ou difícil de entender, já que possui um grande número de classes independentes ou se trechos de código fonte estão indisponíveis. Este padrão esconde as complexidades de um sistema maior e provê uma interface simplificada ao cliente. Tipicamente envolve uma única classe responsável por englobar uma série de membros requeridos pelo cliente. Estes membros acessam o sistema em nome do Façade e escondem os detalhes de implementação.
Compartilhar