Si, pero el lenguaje de query sigue siendo necesario, al menos algo como el que está proponiendo Magma.  En vez de navegar todo desde un root Dictionary.
Por más que sea un modelo de objetos, siempre que necesites hacer consultas complejas que involucren varios joins de mucho volumen, vas a tener que hacerlas con un lenguaje de consulta (aunque no sea SQL) para que las resuelva el motor de base de datos y no las resuelvas vos a nivel de lenguaje con #collect, #select, etc.  Lo que sería -creo- muy ineficiente.
Me alegro de escuchar que OmniBase le anduvo muy bien a mucha gente.  La última vez que lo probé sobre Squeak/Linux tenía un problema de locks que aún no habían resuelto.  Pero escuchando todos estos comentarios favorables, voy a volver a probarla.
Pero por ahora, me inclino por Magma por que le están dando bola a la forma de hacer consultas.
Cuando utlizas una ODBMS no tenes por que hacer joins (en el sentido) como se hace una base de datos.
#collect:, #select:, #allSatisfy: #anySatisfy: ,etc son ineficientes si tenes una coleccion muy grande en disco.
Como hablamos en otra ocasion en esta lista, si ese es el caso --> lo mas seguro que haya un error en el diseño del sistema.
No tenes por que tenes colecciones muy grandes en un objeto.
Por otra lado cuando tenes un consulta compleja como las ODBMS manejan referencias directas es mucho mas rapido.
(otra vez depende del diseño de tu sistema)

Otra cosa que podes hacer con una ODBMS es crear una clase (o jerarquia) Consulta o Query donde podes tener los resultados ya obtenidos. Esto te sirve para consultar datos historicos (sino queres meterte con los updates; si si queres meterte lo podes usar con los datos "actuales").

Cuando tu modelo cambia muy seguido en el tiempo, en una Base de Datos puede ser un dolor de cabeza. O si necesitas persistir un TreeModel, ejemplo, unaPartida de ajedrez con todas sus variantes y comentarios.

El root tambien puede ser muy util para acelerar las consultas, ya que podes generar puntos de entrada directamente las instancias que necesitas consultar.

saludos bruno




--~--~---------~--~----~------------~-------~--~----~
Ha recibido este mensaje porque está suscrito a Grupo "clubSmalltalk" de Grupos de Google.
 Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a [email protected]
 Para anular la suscripción a este grupo, envíe un mensaje a [EMAIL PROTECTED]
 Para obtener más opciones, visita este grupo en http://groups.google.com/group/clubSmalltalk.
-~----------~----~----~----~------~----~------~--~---

Responder a