[Home] [Groups] - Message: [Prev in Group] [Next in Group]
27411: Re: [MUD-Dev] Database vs. Disk
[Full Header] [Plain Text]
From: J C Lawrence <claw@kanga.nu>
Newsgroups: nu.kanga.list.mud-dev
Date: Fri, 23 May 2003 01:07:21 -0700
References: [1] [2] [3] [4] [5] <-newest
Organization: Kanga.Nu
On Thu, 22 May 2003 16:06:37 -0400 (EDT)
Zach Collins <(Siege)" <zcollins@seidata.com>> wrote:
> On Thu, 22 May 2003, Nicolai Hansen wrote:
>> Despite my search I have never encountered a database that allowed me
>> to store an object. I always have to write Object.Save() /
>> Object.Load() methods which is a pain, especially when you want to
>> change stuff.
> I believe a number of interpreted languages offer object serialization
> - Python and Java at the very least...
cf ZODB for the Python world.
> ... - but compiled languages like C++ tend not to have options like
> that by default.
Certainly there are a great many external libraries which offer object
(de-)serialisation for C++ (usually in platform dependent ways), but
yes, its not a base language feature.
> In part, I think, this is because objects are more complex after
> compile-time than the sum of their parts as coded, so that you have to
> pick and choose what gets serialized and how.
Quite.
Given: ObjectA contains a pointer to ObjectB, a reference to ObjectC,
and an attribute of ObjectD, and inherits from ObjectX and ObjectY,
each of which potentially have their own variously complex multiple
inheritance trees.
When I serialise ObjectA, how much do I have to serialise? For that
choice, how do I guarantee logical consistency across the DB for
crash-recovery or rollbacks or even simple updates to objects which are
commonly inherited from or otherwise referenced?
--
J C Lawrence
---------(*) Satan, oscillate my metallic sonatas.
claw@kanga.nu He lived as a devil, eh?
http://www.kanga.nu/~claw/ Evil is a name of a foeman, as I live.
_______________________________________________
MUD-Dev mailing list
MUD-Dev@kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev