From:                                         owner-einf@dei.isep.ipp.pt on behalf of Paulo Gandra de Sousa [psousa@dei.isep.ipp.pt]

Sent:                                           segunda-feira, 23 de Abril de 2007 17:01

To:                                               einf@dei.isep.ipp.pt

Subject:                                     [einf] material didatico #4

 

Bom dia,

 

Nas últimas sessões foram apresentados do ponto de vista teorico os diferentes padrões para representação de entidades, lógica de negócio e lógica de acesso a  dados. Nesta sessão começaremos a ver uma aplicação exemplo implementada usando os padrões apresentados.

 

·         Explicação do problema

·         Resolução usando Table Module + Table Data Gateway com Record Set

·         Resolução usando  Table Module + Table Data Gateway com Custom Classes

·         Download do código fonte da aplicação

o   contém resolução usando outros padrões; de momento consultem apenas as soluções relacionadas com TM e TDG

 

Podem fazer download da resolução do exercico #1

 

Exercício #3: utilizando a aplicação de exemplo Shop de ADAV e aplicando os padrões Table Module e Table Data Gateway:

1.      transforme a classe Customer existente

2.      transforme a classe Product existente (ignore por enquanto o método interno ShopStatus InStock(OleDbConnection conn, OleDbTransaction tx, int ProductID, int Quant) )

3.      transforme a classe User existente

§         os métodos auxiliares que existiam na classe UtilDB para autenticação de utilizadores devem ser passados para a classe User para organizar o código de forma lógica e manter coerente as responsabilidades de cada classe

4.      utilize uma classe de excepção proprietária para encapsular as excepções do provider ADO.net para a camada de negócio

5.      divida a aplicação em dois componentes separados para lógica de negócio e lógica de acesso a dados

§         por enquanto ignore a situação da classe Sale, mantendo a lógica de acesso a dados e de negócio misturados nessa classe.

§         para tal pode ser necessário manter, por enquanto, uma cópia da classe UtilDB nos dois componentes

 

Relembro que podem (devem) tirar dúvidas sobre a matéria e os exercicios utilizando o email einf@dei.isep.ipp.pt ou psousa@dei.isep.ipp.pt

 

Cumprimentos,

 

Paulo Gandra de Sousa