Hi,Being relatively new to CrystalSpace, I digged a bit deeper into the User's Manual again and came across the chapter about SCF. While having read it from beginning to end, I still don't have any clue about what this mechanism does bring to the table. I mean, what is the benefit to just declaring the implementing class itself and using that instead of an extra SCF interface?
I read something in the introduction about being able to do let SCF objects communicate between processes with COM and CORBA and the like, but why should somebody do that? It's a game engine, after all! In 99% of the case, a game does not have to integrate with its environment. (Maybe with other instances of itself running on other machines for multiplayer, but this should probably be the job of a network subsystem, not of a basic object framework.)
I also don't grasp the versioning argument. The manual says "if it happened that you compiled the shared library with a slightly different version of [concrete class] (that, say, had one member variable fewer) you will end up with a SIGSEGV crash." Isn't that what the d-pointer idiom [1] is for? I see no reason how SCF solves this better.
So, why SCF? Regards, Denis [1] http://jatshergill.com/blog/?p=212
------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev
_______________________________________________ Crystal-main mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/crystal-main Unsubscribe: mailto:[email protected]?subject=unsubscribe
