Persistencia de Objetos I

Recopilado por Germán S. Arduino


From: "Alejandro F. Reimondo"
Date: Sun Jan 6, 2002 10:18 pm
Subject: Re: [objetos] Consulta sobre implementacion en BD


Hola Ernesto,

 

Ahora mi compañero de equipo que tiene a su cargo la parte
 de persistencia, me dice que no tiene claro donde se implementan
 las clases para la persistencia, si en el modelo del dominio,
 en el de aplicacion o donde.


Dependiendo de que alternativa de persistencia quieras utilizar
(y que smalltalk estes utilizando), deberás hacer algo para
que tus objetos sean persistentes, o no.
Si ya tenes elegida la forma que vas a emplear, lo mas seguro
es leer los manuales detalladamente. En la mayoría de los
casos los ejemplos incluyen las problemáticas más comunes.

 

Yo segun entiendo en los manuales (VisualWorks 5i.4nc)
 que irian en el modelo del dominio(serían parte del dominio),
 lo que me lleva a reimplementar lo que ya hice y aca la
 pregunta: es asi? y sino que me recominedan hacer?


En algunos esquemas de persistencia se propone que
tus clases hereden de unas clases persistentes;
en otros podes utilizar el esquema conociendo a
algun administrador de persistencia global y delegando
en él como mapear y guardar objetos.
En otros casos se generan metodos automáticamente
sobre los accessors donde se tramita la persistencia.

 

Tiren con todo que total es prototipo y si hay que tirar
 todo y empezar de nuevo bien.


Supongo que tu pregunta estaba acotada al uso de bases
relacionales...
Si no es así y podes utilizar mecanismos de persistencia
de objetos, es recomendable que les des una hojeada;
te será mas útil invertir tiempo en esquemas de objetos,
pues las bases relacionales para guardar objetos son
como una "frazada corta", cuando cubrís un lado se te
descubre otro... []
Si tu interés es aprender como guardar objetos de
manera eficiente, será muy positivo que intentes utilizar
algún esquema de objetos, al menos leer los manuales
te será de utilidad.
Sobre como persistir objetos hay varias alternativas,
que difieren en escala, costos, transparencia y objetivos
técnicos. No hay una que sea "la mejor", sino que hay
una que es la mas adecuada para CADA caso. Conocer
cual es la más adecuada en un caso particular, requiere
de experiencia en todas las alternativas y por ello es que
te recomiendo ver algo mas allá de lo (quizás) ya
conocido (RDBs).

Te recomiendo intentar utilizar la versión no comercial
de Gemstone o la licencia por 30dias de productos
como VOSS ( podes buscar refs en Internet sobre
Logic Arts, los manuales son interesantes de leer ).
Quizás te sirvan alternativas simples como Minnestore.
Si lo intentas utilizar seguro varios de nosotros estaremos
muy interesados en conocer tus experiencias, pues este
esquema de persistencia esta actualmente bajo el
compromiso de mantención de Smalltalking, es decir,
es un producto sobre el que Smalltalking tiene interés
en darle soporte (seguramente podrás hablar
con german@smalltalking.net sobre esta solución).

bueno, espero no haberte mareado,
hasta pronto,
Ale.

[] a menudo he visto que cuando mejor esta hecho un
sistema de objetos menos perfomante es en un
esquema relacional. Además es común ver que los
sistemas relacionales requieren de rediseños a medida
que escala el volumen de información, problemática
ridícula en caso de utilizar objetos (delegación).
 


ArSol.biz 2004