From: owner-einf@dei.isep.ipp.pt on behalf of Paulo Gandra de Sousa
[psousa@dei.isep.ipp.pt]
Sent: quinta-feira, 3 de Maio de 2007 19:00
To: einf@dei.isep.ipp.pt
Subject: [einf] Material didatico #5
Bom dia,
Após terem percebido os padrões Table Module e Table Data Gateway e com base no exemplo apresentado, devem ter conseguido resolver o exercico #3. Com base nessa resolução vamos agora tratar do problema de gestão de transacções que envolvam mais que um Table Module, como é o caso do registo de uma venda na classe Sale (tem que reduzir o stock de produto, mas a classe responsavel por essa operação é a classe Product)
Resolução do exercico #3
Exercício #4: utilizando a aplicação Shop em três camadas do exercício #3, e com base no problema enunciado:
1. Reflita sobre como poderia criar uma classe TransactionalContext que permita solucionar este problema sem violar as regras de encapsulamento OO nem as regras de separação de responsabilidades do modelo 3 camadas
2. implemente a sua solução em código para a classe Sale
§ criando o Table Module e Table Data Gateway correspondente
§ eliminando a classe UtilDB e os métodos auxiliares InStock que se mantinham da implementação original
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