Hola!
Estoy haciendo unas cosas con Dolphin XP, y tengo algunas dudas que me
surgen al trabajar con objetos "vivos" (puros).
Escenario:
AL trabajar con un paradigma GUI/Objetos/RDBMS, cuando uno quiere "editar"
un objeto se instancia una interfase (GUI) que crea objetos que obtiene de
la base de datos (modelo), y dependiendo de si uno guarda o no los cambios
realizados en el "objeto" intermedio, se guardan los cambios en el modelo
"real" (la base de datos, que es quien lleva la identidad de cada objeto).
Ahora se me presenta el asunto de como hacer esto al trabajar con objetos
que estan en el ambiente, y cuando los edito, efectivamente estoy editando
el objeto "modelo", por lo tanto no hay una manera rápida de "deshacer"
estos cambios, osea que la lógica es: cambio realizado, cambio "commiteado".
Para solucionar este asunto, se me ocurre que en el "presenter" (en el caso
de dolphin), se conserve la instancia "original" y trabaje sobre la copia.
Otra solución que me pareció que podía funcionar, es utilizar AspectBuffer,
que resolvería el problema. Lo que no me queda claro, es si al redefinir
#copy de mi objeto en cuestión generaré problemas y redundancias, por
ejemplo, si un objeto posee un número de serie que no puede estar duplicado
en el sistema.
No se si han llegado a una solución más elegante o mejor adecuada. Pero esa
es mi duda hoy.
Saludos.
--
Esteban A. Maringolo