Prévia do material em texto
Pergunta 1 O principal alvo na utilização dos padrões de projeto no desenvolvimento de software é o paradigma de orientação a objetos. No que se refere a orientação a objetos em padrões de projetos, assinale a alternativa CORRETA. A . Os objetos são os elementos principais em projetos orientados a objetos, e todos os desenvolvedores sabem que a parte mais fácil do projeto é conseguir realizar a decomposição de um sistema em objetos. B . As abstrações que aparecem durante um projeto são os pontos dispensáveis para tornar mais flexível. C . Realizar a decomposição de um sistema em objetos se torna fácil devido a muitos fatores, tais como o encapsulamento, a granularidade, a dependência, a flexibilidade, o desempenho, a evolução, a reutilização e muitos outros. D . Muitos objetos que constituem o projeto provêm do método de análise. Mas, projetos que são orientados a objetos são compostos por objetos que têm uma correspondência no mundo real. E . o encapsulamento, a granularidade, a dependência, a flexibilidade, o desempenho, a evolução, a reutilização são exemplos de fatores que influenciam a decomposição, que são frequentes as formas incompatíveis. Pergunta 2 Apesar de um padrão ser somente a descrição de um problema, de uma solução mais generalizada e sua justificativa, isso não quer dizer que qualquer solução habitual para um problema poderá formar um padrão, afinal de contas, existem diversas características que são obrigatórias e devem ser supridas pelos padrões. Com relação às características de padrões de projeto, assinale a alternativa que NÃO representa uma característica de padrão de projeto. A . O padrão deverá relatar quais serão as suas consequências, de maneira que possa ser considerada a solução alternativa de projetos e para uma compreensão dos seus benefícios na aplicação do projeto. B . O padrão deverá relatar de forma clara a qual problema ele deverá ser utilizado, isto é, quais serão os problemas que, no momento que for inserido em um contexto, o padrão irá conseguir resolver. C . Devem ter um nome que possa descrever o problema, as suas soluções e as suas consequências. Um nome possibilita determinar o vocabulário que será utilizado pelos arquitetos e desenvolvedores à níveis mais elevados de abstração. D . A solução deverá descrever todos os elementos que compõem o projeto, os seus relacionamentos, as suas responsabilidades e quais colaborações ele terá. Um padrão deverá ser uma solução verdadeira, pois deverá ser exposto em forma de algoritmo que poderá ser aplicado de várias maneiras. E . Descrevem uma solução negativa para um problema que resultou em uma má situação, assim como descartar de uma má situação e como agir dessa má situação para uma situação boa. Pergunta 3 A ideia do Abstract Factory é oferecer uma interface para que seja possível criar famílias de objetos com relacionamentos ou com dependências, sem descrever suas as classes concretas. Com relação a Abstract Factory, assinale a alternativa CORRETA. A . É um framework genérico onde a aplicação passa a conhecer tanto uma interface quanto a sua implementação concreta. B . Uma aplicação pode ser implementada para disponibilizar suporte para as plataformas e características semelhantes. C . O padrão Abstract Factory deverá ser aplicado quando desejamos unir a aplicação da implementação da classe concreta, o que poderia ser um componente. D . A maneira de construção será definindo uma categoria de componentes para cada plataforma e uma fábrica que irá instanciar esses componentes de acordo com a sua plataforma de interesse onde a aplicação será executada. E . O sistema deverá ser dependente da forma de como seus produtos são criados, compostos ou representados. Pergunta 4 O padrão arquitetural MVC (Model-View-Controller), que é um dos mais primitivos e mais usados atualmente, é um padrão de projeto e foca seu estudo no modelo Model-View-Controller. Com relação a MVC, assinale a alternativa CORRETA. A . Coesão: É o estágio onde uma classe conhece a outra. Caso o conhecimento da classe A com relação a classe B for por meio de sua interface, teremos uma baixa coesão, e isso sempre será bom. De outra forma, se a classe A tiver dependência de membros da classe B que não farão parte da interface de B, teremos uma alta coesão, o que será ruim. B . Acoplamento: No momento em que temos uma classe produzida de maneira que tenha somente um e muito bem concentrado propósito, dizemos que essa classe tem uma alta acoplamento, e isso sempre será bom. No momento em que temos uma classe com a finalidade que não pertencem somente a ela, teremos uma baixa acoplamento, o que será sempre ruim. C . É um padrão que acaba sendo repetido poucas vezes no mesmo contexto, contendo uma solução para ser possível resolver esse problema de maneira que tal solução possa ser usada apenas quando utilizado o MVC. D . É considerado um padrão de projeto, ou seja, uma solução que já foi testada e documentada, afim de resolver um problema genérico em projetos idênticos. E . Esse padrão demonstra e exemplifica como fazer a utilização correta das três camadas do padrão MVC, assim como aborda o que deverá ser implementado em cada uma destas camadas, afim de propiciar aos desenvolvedores uma manutenção muito mais fácil e o reaproveitamento de classes e partes do projeto em futuros projetos. Pergunta 5 Os padrões de projetos têm despertado a atenção e aguçado o interesse dos arquitetos de software, justamente por proporcionar muitos elementos que conduzem para o reaproveitamento de soluções para diversos projetos, e não somente a reutilização de código. Com relação aos padrões de projeto, assinale a alternativa CORRETA. A . Em se tratando de software, os padrões de projeto não são classes nem são objeto. Na verdade, os arquitetos utilizam esses padrões para produzir conjuntos de classes e objetos, afim de utilizar de forma mais eficaz. B . Todo software orientado a objetos que for bem projetado não proporciona aos arquitetos a possibilidade de reutilizar e aproveitar componentes, pois sua interferência não é recomendada. C . Os arquitetos não precisam estar familiarizados com os padrões, pois essa responsabilidade é dos desenvolvedores que irão criar os softwares. D . Não é necessário ter conhecimentos matemáticos para encontrar solução de problemas. E . Os padrões de projetos tornam o fato de reutilizar soluções mais fácil e as arquiteturas muito mais bem-sucedidas, mas a maneira de construir os softwares não se torna flexível pela dependência dos padrões e não é tão simples para manter.