Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação: CCT0265_AV_201202162606 » PADRÕES DE PROJETO DE SOFTWARE Tipo de Avaliação: AV Aluno: 201202162606 - FRANCISCO JOSÉ DA SILVA Professor: HORACIO DA CUNHA E SOUZA RIBEIRO Turma: 9001/AA Nota da Prova: 5,5 Nota de Partic.: 1 Data: 21/11/2014 09:29:34 1a Questão (Ref.: 201202297904) Pontos: 0,5 / 0,5 (CESGRANRIO - 2009) Ao consultar informações a respeito dos padrões de projeto Adapter e Bridge, um Analista de Sistemas identificou uma afirmativa INCORRETA. Assinale-a. O Bridge estabelece uma ponte entre uma abstração e suas possíveis implementações. Ambos são padrões estruturais que possuem alguns atributos em comum. O foco do Adapter é a solução de incompatibilidades entre duas interfaces existentes. Ambos promovem a flexibilidade ao fornecer um nível de endereçamento indireto para outro objeto. O Adapter é inferior ao Bridge porque não evita a replicação de código. 2a Questão (Ref.: 201202294169) Pontos: 0,5 / 0,5 A família de padrões GoF é dividida em três grupos principais de padrões, a saber: Padrões de Criação; Padrões Metodológicos; Padrões de Ponte Padrões de Processo; Padrões de Singularidade; Padrões de Prototipação Padrões de Proxy; Padrões de Criação; Padrões de Encadeamento Padrões Estruturais; Padrões de Processo; Padrões de Responsabilidade Padrões Comportamentais; Padrões de Criação; Padrões Estruturais 3a Questão (Ref.: 201202286647) Pontos: 0,5 / 0,5 considerando a classe de projetos GoF assinalem a opção cujos padrões de projeto estão todos classificados como Comportamentais Command,- Interpreter, - Iterator, - Mediator, - Observer, State, Strategy Command,- bridge, - Iterator, - Mediator, bridge, State, Strategy Command,- bridge, - Iterator, - Mediator, - Observer, State, Strategy Command,- bridge, - Iterator, - Mediator, - composite - State, Strategy Command,- Interpreter, - Iterator, - Mediator, - composite , State, Strategy 4a Questão (Ref.: 201202286202) Pontos: 0,5 / 0,5 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. FACADE. BUILDER. SINGLETON. MEDIATOR. FACTORY METHOD. 5a Questão (Ref.: 201202295625) Pontos: 1,0 / 1,0 Selecione a opção totalmente correta da responsabilidade correta para o do padrão GRASP Criador: Tem a seguinte responsabilidade de responder de maneira intuitiva por um programador ou analista de sistema, baseado nas interação e nos métodos menos utilizados, desta forma otimizando a criação. A responsabilidade é definida pelo programador baseado nos métodos solicitados pela classe que está sendo criada. Tem a responsabilidade de como primeira atividade procura-se objetos de software existentes que satisfaçam os métodos necessários para a criação do objeto. Uma criação fica definida pela definida pela própria classe alocando-se o método. O padrão de projeto está interessado no algoritmo de criação, e a determinar qual classe dever ser responsável pelo uso de um novo método referente a classe inicial. Tem a seguinte responsabilidade de fazer, pois sua funcionalidade está relacionado com a resposta a seguinte pergunta: quem deve criar um objeto A. 6a Questão (Ref.: 201202286243) Pontos: 0,5 / 0,5 Baseando-se nas necessidades apresentadas do lado direito do quadro abaixo, relacione-as ao padrão adequado a utilização e, em seguida marque a alternativa que corresponde a sequencia numerada correspondente. 4 - 2 - 1 - 3 4 - 3 - 1 - 2 2 - 3 - 4 - 1 4 - 1 - 2 - 3 3 - 4 - 1 - 2 7a Questão (Ref.: 201202297914) Pontos: 0,5 / 0,5 (FGV - 2008) Considere as seguintes assertivas sobre as vantagens do uso de padrões de software (software 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 I e III. somente II e III. somente I e II. I, II e III. somente II. 8a Questão (Ref.: 201202295631) Pontos: 0,0 / 1,0 considere as classes e métodos abaixo: E escolha a opção correta sobre a gravura: E escolha a opção correta sobre a gravura: sobre o acoplamento e coesão : O método void imp_NF (cod) poderia ser implementado na classe NF sem envolver mais nenhuma classe. Não tendo outros médotos o acoplamento não existiria o que é o desejável. Existem acoplamentos das classes cliente e Nota fiscal. E Nota fiscal e Item de Nota fiscal. Esta forma de acoplamento é caracterizado por chamada de métodos. Existem acoplamentos das classes que foram gerados de forma desnecessária pois poderiam ser incorporados em um único método e isto iria facilitar a manutenção e o entendimento. Existem acoplamentos que poderiam ser evitados, considerando apenas o diagrama, assim o método de imprimir nota fiscal, dando-se o código de cliente, pode ser mapeado de forma diferente melhorando-se o acoplamento. método void imp_NF (cod) não deve ser implementado na classe NF. Obteria-se um projeto melhor se NF fosse acoplada a classe Cliente seus métodos incorporados na classe cliente. Pode-se garantir um melhor acoplamento 9a Questão (Ref.: 201202381446) Pontos: 1,5 / 1,5 O uso de classes "statics" garante que somente uma instãncia estará em memória e que a destruição pelo "garbage collection" será mais rápida do que o uso do padrão singleton. Por que então devemos usar o padrão singleton? Resposta: Quando se tem a necessidade de garantir que, apenas uma única instância de uma determinada classe, seja carregada no sistema. Gabarito: Porque uma classe ¿static¿ SEMPRE é carregada na memória quando a aplicação é executada e a classe singleton não, sendo carregada na memória quando solicitada a primeira instância. 10a Questão (Ref.: 201202304412) Pontos: 0,0 / 1,5 Ter uma baixa coesão nos objetos do sistema pode gerar difícil compreensão e reutilização, além de afetar a manutenibilidade. O que é ter baixa coesão ? Resposta: É pouca ou quase nenhuma comunicação entre as classes e seus metodos. Gabarito: É quando se tem uma mesma classe executando muitos trabalhos, realizando muitas coisas não relacionadas.
Compartilhar