Ver Mensaje Individual
  #7  
Antiguo 02-07-2007
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Reputación: 21
AzidRain Va camino a la fama
Pues bien, aunque no me considero por mucho experto yo lo hago asi para no meterme en honduras:

Practicamente la Capa de datos queda metida en uno o varios datamodules que son los "objetos" que en mi abstraccion saben como manejar los datos que no son mas que tablas.

Ahora bien, todo lo demás lo modelo asi:

1-- Formas "inteligentes"
2.- Formas Auxiliares
3.- Clases varias (todo lo que no sea forma)

Las formas inteligentes saben hacer cosas segun sea el caso, por ejemplo, un catalogo de clientes. La forma es capaz de editar, borrar, etc. uno o varios clientes..para ello utiliza alguno de los datamodules que son los que de verdad hacen el trabajo.

Las formas auxiliares son solo mensajitos o formas adicionales que lo unico que hacen es recoger alguna información (por ejemplo una ventanita de captura).

Las demás clases hacen cosas que no requieren interfaz: respaldos, configuraciones, etc. y pueden formar parte de una forma como propiedad.

De manera que al final lo que obtienes es un conjunto de formas que utilizan otros objetos o clases para manipular datos (la interfaz se da por hecho).

El chiste es separar bien los limites de cada cosa. Una forma, por ejemplo, no debe manipular directamente una tabla, sino hacerlo por medio de alguna otra clase.
Por ejemplo, el catalogo de clientes, puede haber un objeto "TClientes" con sus métodos nuevo, borrar, editar, etc. este objeto clientes es el que internamente accede a datos (aunque aqui adentro ya no utilice mucha OOP, pero el objetivo es encapsular lo mas que se pueda) Este objeto TClientes puede ser una propiedad del Form Catalogo de clientes.

No es muy ortodoxo este esquemita pero a mi me ha funcionado y sobre todo se presta para esos casos en los que no hay mucho tiempo para modelar y hay que programar algo al vuelo.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita