Cita:
Empezado por roman
Hola Chris,
Yo sigo sin ver del todo la necesidad de los dos constructores. Bueno, entiendo que tengas razones para hacerlo y seguramente tienes razón, pero tu argumento de los distintos dataset no me convence  .
|
Hola Román!
Aparte de los Datasets separados también hubieron otras razones por la que tomé este diseño. Uno de ellos era independizar al máximo el visor del explorador y viceversa. Es así porque necesitaba que cualquier parte de la aplicación pudiera, con la mayor simplicidad posible, llamar al visor en modo de inserción/edición o simplemente vista. No solamente los exploradores.
Otra de las razones es que en mi aplicación, los visores no se muestran en forma modal (requerimiento auto impuesto
por usabilidad). Esto ocaciona que el explorador no pueda "quedarse esperando" a que un usuario ingrese o modifique un nuevo cliente por ejemplo. Cuando los visores hacen un cambio a la base de datos, lo notificacan a toda la aplicación por medio de Mensajes de Windows. Así el resto de módulos pueden decidir si procesar o no la notificación. Algo muy similar a cómo funcionan ciertas partes de la API de Windows.
Este diseño me ha dado mucha independencia y agilidad para desarrollar nuevo módulos. Ya que los exploradores y visores descienden de una clase base que implementa lo básico para cada uno, los herederos simplemente solo implementan lo que es específico para el tipo de dato con el que trabajan.
Saludos,
Chris