Baixe o app para aproveitar ainda mais
Prévia do material em texto
22/10/2021 16:18 Estácio: Alunos https://simulado.estacio.br/alunos/ 1/4 Teste de Conhecimento avalie sua aprendizagem (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 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: PADRÕES DE PROJETO DE SOFTWARE Lupa Calc. CCT0425_A1_201703344936_V1 Aluno: FELIPE ANDERSON SILVA DE ANDRADE Matr.: 201703344936 Disc.: PAD.PROJ.SOFTWARE 2021.2 (G) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua avaliação. O mesmo será composto de questões de múltipla escolha. Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS. 1. V F F V F F V V V F V V F F V F F V V V V V V V V 2. Estão corretas as afirmativas II e III; Apenas está correta a afirmativa I; Estão corretas as afirmativas I e III; javascript:voltar(); javascript:voltar(); javascript:duvidas('118991','7168','1','5491717','1'); javascript:duvidas('1034142','7168','2','5491717','2'); javascript:diminui(); javascript:aumenta(); javascript:calculadora_on(); 22/10/2021 16:18 Estácio: Alunos https://simulado.estacio.br/alunos/ 2/4 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: Qual o objetivo dos Padrões Estruturais? Assinale a opção CORRETA. Todas as afirmativas estão corretas; Apenas está correta a afirmativa II; Explicação: Todas estão corretas porque 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. 3. Decorator, Interpreter, Observer Interpreter, Observer, Decorator Observer, Decorator, Interpreter Observer, Interpreter, Decorator Interpreter, Observer, Decorator Explicação: O padrão Observer (observador) 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). 4. Fornecem um guia de como instanciar objetos. Envolve decisões dinâmicas para escolher qual classe instanciar. Definem a quais objetos delegar responsabilidade. Definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mutua. Mostram como estruturar e encapsular essas decisões. javascript:duvidas('1034137','7168','3','5491717','3'); javascript:duvidas('2950100','7168','4','5491717','4'); 22/10/2021 16:18 Estácio: Alunos https://simulado.estacio.br/alunos/ 3/4 Existe um padrão GOF para implementar uma árvore de itens e tratar todos os nós, folhas ou não, de maneira uniforme. Implemente classes que representem um sistema de arquivos, com pastas e arquivos. Pastas possuem nome e diversos arquivos e subpastas. Arquivos possuem nome e tamanho em KB. Seu programa deve navegar pela árvore e imprimir seus itens e tamanhos. O texto está se referindo a qual padrão de projeto? Como a adoção de um padrão de projeto pode auxiliar o desenvolvimento de software? Sobre padrões de projeto escolha a opção incorreta. (2016 - IF-PE) Observe as afirmativas abaixo: I. Com frequência, equipes de desenvolvimento de software escrevem classes que proveem Explicação: Essa afirmativa está CORRETA porque as outras se referem a Padrões de Criação. 5. Creator Façade Decorator Builder Composite 6. Por meio da adoção de qualquer padrão, desde que seja um dos que foram aceitos pela comunidade internacional Alterando a forma com que os objetos são criados e transformar a criação de objetos uma função específica de classes herdadas Por meio da aplicação obrigatória de ao menos um dos padrões GOF Por meio da sugestão de melhorias nos acessos e estruturação de situações problemáticas Alterando o meio de acessar classes por meio de Interfaces e Dependências 7. Um padrão de projeto define uma estrutura que obrigatoriamente não poderá ser alterada pelo desenvolvedor 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 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. 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. 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 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. 8. javascript:duvidas('1067500','7168','5','5491717','5'); javascript:duvidas('751164','7168','6','5491717','6'); javascript:duvidas('107765','7168','7','5491717','7'); javascript:duvidas('1105974','7168','8','5491717','8'); 22/10/2021 16:18 Estácio: Alunos https://simulado.estacio.br/alunos/ 4/4 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 maneiraque 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, Decorator, Command e Adapter. Adapter, Facade, Template Method, Chain of Responsibility e Proxy. Facade, Adapter Template Method, Chain of Responsibility e Decorator. Adapter, Facade, Template Method, Command e Interpreter. Memento, Strategy, Chain of Responsibility, Template Method e Memento. 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. Não Respondida Não Gravada Gravada Exercício inciado em 22/10/2021 16:17:11. javascript:abre_colabore('38097','270459793','4933648000');
Compartilhar