Prévia do material em texto
31/03/2022 11:07 Estácio: Alunos https://simulado.estacio.br/alunos/?p0=157472343&user_cod=2565576&matr_integracao=202001222511 1/5 Simulado AV Teste seu conhecimento acumulado Disc.: PADRÕES DE PROJETO DE SOFTWARE COM JAVA Aluno(a): PEDRO HENRIQUE DE ALMEIDA DA SILVA 202001222511 Acertos: 4,0 de 10,0 31/03/2022 Acerto: 0,0 / 1,0 Você precisa implementar um módulo que leia um arquivo RTF (Rich Text Format) e converta seu conteúdo em diferentes formatos (ASCII, TeX, HTML etc.). Sabendo que o arquivo é composto por diferentes partes (texto, formatação, figuras etc.), qual dos padrões seria mais indicado para isolar o conversor das diferentes formas de representação do conteúdo gerado? Singleton Factory Method Prototype Builder Abstract Factory Respondido em 31/03/2022 11:06:48 Explicação: A resposta certa é: Builder Acerto: 0,0 / 1,0 Analise a estratégia de solução a seguir: ''Implementar uma operação clone em cada produto concreto a ser instanciado, permitindo que um módulo cliente crie uma nova instância por meio da criação de uma réplica de um objeto já existente''. Assinale a alternativa com o nome do padrão que define essa estratégia: Builder Abstract Factory Singleton Prototype Factory Method Respondido em 31/03/2022 11:06:50 Explicação: A resposta certa é: Prototype Questão1 a Questão2 a https://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); 31/03/2022 11:07 Estácio: Alunos https://simulado.estacio.br/alunos/?p0=157472343&user_cod=2565576&matr_integracao=202001222511 2/5 Acerto: 1,0 / 1,0 Você está desenvolvendo um sistema e percebe que está instanciando uma grande quantidade de objetos cujos atributos não mudam de valor durante toda a execução do programa. Muitos desses objetos instanciados são réplicas, o que gera uma utilização muito ineficiente da memória. Assinale a alternativa com o nome do padrão que poderia ser aplicado nesse cenário: Singleton Flyweight Composite Bridge Decorator Respondido em 31/03/2022 11:06:52 Explicação: A resposta certa é: Flyweight Acerto: 0,0 / 1,0 Possibilitar a manipulação de objetos individuais e de agregados de uma estrutura hierárquica (árvore) de objetos por meio do mesmo conjunto de operações, sem que o módulo cliente precise fazer a distinção entre o tipo do objeto manipulado (individual ou agregado). Assinale a alternativa com o nome do padrão que possui esse propósito: Flyweight Bridge Composite Adapter Proxy Respondido em 31/03/2022 11:06:54 Explicação: A resposta certa é: Composite Acerto: 0,0 / 1,0 Você está desenvolvendo um sistema que produz informações guardadas em um ou mais objetos que só devem ser armazenados em um banco de dados após o processamento ser concluído. Entretanto, esses dados estão vinculados a uma sessão de usuário, que pode ser interrompida em função de problemas de conexão. Esse padrão oferece uma solução que permite que um objeto A capture e salve todo o estado de um objeto B da sessão, sem que A tenha que quebrar o encapsulamento de B, tornando possível a restauração do estado do objeto B, a partir de um estado capturado anteriormente por A. Assinale a alternativa com o nome do padrão que corresponde a essa estratégia de solução: Strategy Mediator Memento Observer Command Respondido em 31/03/2022 11:06:55 Questão3 a Questão4 a Questão5 a 31/03/2022 11:07 Estácio: Alunos https://simulado.estacio.br/alunos/?p0=157472343&user_cod=2565576&matr_integracao=202001222511 3/5 Explicação: Gabarito: Memento Acerto: 1,0 / 1,0 Você está desenvolvendo um sistema para acompanhar as cotações da bolsa de valores. As cotações podem ser acompanhadas na interface com usuário na forma textual (ticker da ação e o seu valor) e na forma de um gráfico de candlesticks, apresentando o histórico das cotações em um período do tempo. As duas formas de visualização devem estar em sincronia com as variações que ocorrem com o valor da cotação das ações. Assinale a alternativa com o nome do padrão que pode ser aplicado para resolver esse problema de sincronização de visualizações de um conjunto de informações com a sua fonte. Observer Iterator Strategy Mediator State Respondido em 31/03/2022 11:06:57 Explicação: Gabarito: Observer Acerto: 0,0 / 1,0 Em um sistema de informação, o desenvolvedor decide colocar em um módulo X todas as operações necessárias para a execução de um caso de uso. Esse módulo não distribui a responsabilidade com outras classes do sistema. Ele apenas utiliza classes de domínio e suas operações get/set para obter ou modificar dados presentes em objetos dessas classes. O resultado é um módulo conhecido como ''God Class'', ou seja, uma classe com muitas operações, com milhares de linhas de código. Qual tipo de coesão está presente no módulo X conforme a descrição acima? Coincidente Funcional Temporal Procedural Lógica Respondido em 31/03/2022 11:06:59 Explicação: Na coesão procedural os elementos são agrupados de modo a serem executados em uma determinada sequência, utilizando diferentes conjuntos de dados. Acerto: 0,0 / 1,0 Assinale a alternativa que apresenta os níveis de acoplamento entre módulos ordenados do mais baixo para o mais alto: Questão6 a Questão7 a Questão8 a 31/03/2022 11:07 Estácio: Alunos https://simulado.estacio.br/alunos/?p0=157472343&user_cod=2565576&matr_integracao=202001222511 4/5 Dados - Estrutura - Controle - Externo - Global - Conteúdo Estrutura - Dados - Controle - Global - Externo - Conteúdo Dados - Controle - Estrutura - Externo - Conteúdo - Global Dados - Estrutura - Externo - Controle - Conteúdo - Global Estrutura - Dados - Controle - Conteúdo - Global - Externo Respondido em 31/03/2022 11:07:02 Explicação: O nível de acoplamento está relacionado à forma com que uma relação de dependência é estabelecida entre dois módulos. Do nível mais baixo para o mais alto há: acoplamento de dados, quando um módulo se comunica com outro passando apenas os dados dos quais o módulo chamado precisa para cumprir a sua responsabilidade. Seguido de acoplamento de estrutura que utiliza apenas um pequeno subconjunto de dados da estrutura quando um módulo chamador passa uma estrutura de dados para um módulo chamado. Depois, o acoplamento de controle que ocorre quando um módulo controla a lógica interna de outro módulo por meio da passagem de alguma informação de controle. O acoplamento externo ocorre quando módulos compartilham alguma parte do ambiente externo ao software. Já o acoplamento global ocorre quando há comunicação por meio de recursos como variáveis globais. Por fim, o acoplamento de conteúdo que ocorre quando um módulo utiliza aspectos de implementação de outro módulo. Acerto: 1,0 / 1,0 Ao trabalhar com um aplicativo corporativo, segundo a arquitetura MVC, ocorre uma divisão natural das camadas, em termos dos projetos internos, ficando a camada View sob responsabilidade do projeto com terminador "war". A interface padrão, conforme o próprio terminador indica, é um aplicativo Java Web, sendo comum a implementação de um padrão de desenvolvimento para centralizar o tratamento das requisições, bem como redirecionar para a visualização correta, após efetuar as chamadas para a camada Controller. De qual padrão estamos falando, e qual o componente deve implementá-lo? Padrão de desenvolvimento DAO e componente do tipo JPA Padrão de desenvolvimento Facade e componente do tipo EJB Padrão de desenvolvimento Front Controller e componente do tipo Servlet Padrão de desenvolvimento Service Locator e componente do tipo JNDI Padrão de desenvolvimento Flyweight e componente do tipo EJB Respondido em 31/03/2022 10:50:54 Explicação: A resposta correta é: Padrão de desenvolvimento Front Controller e componente do tipo Servlet Acerto: 1,0 / 1,0 A arquitetura MVC (Model, View e Controller) é utilizada de forma ampla,na criação de sistemas cadastrais, e caracteriza-se pela divisão do sistema em três camadas, com objetivos específicos. Considerando a divisão utilizada pelo MVC, a interface de usuário e o componente DAO estariam, respectivamente, nas camadas: View e Controller Model e Controller View e Model Questão9 a Questão10 a 31/03/2022 11:07 Estácio: Alunos https://simulado.estacio.br/alunos/?p0=157472343&user_cod=2565576&matr_integracao=202001222511 5/5 Controller e Model Model e View Respondido em 31/03/2022 10:52:36 Explicação: A resposta correta é: View e Model javascript:abre_colabore('38403','279394917','5175212452');