SóProvas


ID
163633
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2010
Provas
Disciplina
Arquitetura de Software
Assuntos

Considere uma aplicação Web corporativa, orientada a objetos, que está projetada para ser distribuída fisicamente em camadas. A primeira, a camada da apresentação, deverá implementar a interação com o usuário. Essa interação será feita através de um navegador Web. As requisições do usuário são enviadas para a segunda camada, a camada da aplicação, que é responsável pelo processamento das requisições. Na terceira camada física, a camada de gerenciamento de dados, ficará localizado o Sistema de Gerenciamento de Banco de Dados usado pela aplicação. Considere também que a equipe de desenvolvimento está decidindo de que forma essa aplicação deve ser estruturada em camadas lógicas (layers). Nesse contexto, considere as assertivas a seguir.

I - É possível que a camada física de gerenciamento de dados contenha uma parte da lógica do negócio da aplicação.

II - A escolha da tecnologia para implementação da camada física da apresentação é irrelevante para o processo de implantação da aplicação.

III - As classes de acesso aos dados persistentes da aplicação podem estar localizadas na camada física da aplicação.

IV - O uso de um navegador (browser) na camada física da apresentação inviabiliza a implementação de um cliente rico.

São corretas APENAS as afirmativas

Alternativas
Comentários
  • I - É possível que a camada física de gerenciamento de dados contenha uma parte da lógica do negócio da aplicação.

    Correto. Posso colocar em meu banco de dados alguma lógica usando PL/SQL (Oracle) ou T-SQL (SQL Server). Por exemplo, sempre que remover um funcionário, remova todos seus dependentes. Essa lógica do negócio pode estar no banco através de triggers. Regras mais complexas podem ser feitas com linguagens PL/SQL ou T-SQL. No entanto, colocar lógica do negócio na camada física dificultaria muito uma possível migração de tecnologia de banco. Por este motivo, deveremos usar esta abordagem somente quando for inevitável.

    II - A escolha da tecnologia para implementação da camada física da apresentação é irrelevante para o processo de implantação da aplicação.

    ERRADO
    A apresentação é o que o usuário vê. A camada física é a tecnologia (aplicação) que o usúario lança mão para acessar a apresentação de sua aplicação. Pode ser um browser, um cliente em java swing, um applet, etc. Dependendo da camada física de apresentação usada a sua aplicação deverá implantar o processo de uma forma específica. Se for browser é HTTP, se for interface java-swing pode ser RMI, etc.

    III - As classes de acesso aos dados persistentes da aplicação podem estar localizadas na camada física da aplicação.

    CERTO
    Classses de acesso são classes DAO (Data Access Object). Um exemplo delas são as classes do Hybernate. O Hybernate disponibiliza uma camada (classes) para facilitar a persistência de objetos sem precisar escovar bits com JDBC. A camada física pode então englobar o banco de dados e as classes DAO. Alguns autores optam por essa abordagem colocando classes DAO e banco de dados em uma única camada lógica chamada de camada física.

    IV - O uso de um navegador (browser) na camada física da apresentação inviabiliza a implementação de um cliente rico.
    ERRADO.

    Um cliente gordo é um cliente que executa diversas tarefas liberando a carga que estaria sobre o servidor. Por exemplo, quando acessamos o gmail temos um monte de javascript fazendo cálculos em nosso computador, usando para isso o browser. Isso caracteriza um cliente gordo. Feito os cálculos o browser envia para o Gmail os resultados e busca as atualizações necessárias.
  • "II - A escolha da tecnologia para implementação da camada física da apresentação é irrelevante para o processo de implantação da aplicação."

    Errada.
    o IE6 por exemplo é uma Tecnologia que inviabiliza/restringe muitas aplicações, ainda que um Browser... =)
  • Camada Física da Aplicação é uma coisa, Camada Física de Aplicação é outra...