Am 29.11.2007 um 19:39 schrieb Reed Hedges: > > Component does imply that it could be provided by a plugin module, and > is dynamic, both of which are attributes of MetaObjects. > I'm still not convinced that "Component" is a good replacement term.
When I hear "Component" I usually think of something like EJB components, which can be quite heavyweight beasts, in contrast to the lightweight MetaObjects of VOS. A component in this sense is a deployment unit of self-contained functionality, with optional dependencies on other such componentes and possibly container facilities (database backend, naming, etc.). Also they are not really dynamic - you throw some of them toghether at construction time to build an application, possibly writing some glue code for this purpose, and never change their configuration/dependecies afterwards. Hot-deployment is a slightly different matter, but usually only works for truly self-contained components without external dependencies. I am aware of a different notion of "component", which is the Microsoft way in its COM/.NET systems. A component here is basically just a class adhering to some API and type standards, including factories that construct them. This is certainly more lightweight, but even less dynamic than EJB, since you write code that uses factories to create components. Any dynamics is maybe in the ability to replace one COM DLL with a newer version, but beware of DLL hell... For dynamic things that can change at runtime, I usually thing of SOA rather than components. This usually means Web Services, though it does not have to be; the OSGi platform with its "bundles" or "modules" is also clearly SOA, and actually is the only one I would call "dynamic component system". MetaObjects are different in this sense as they always contibute individual functionality to a common vobject. They are not even self- contained, as they usually depend on the linking facility of the core Vobject type. While they somewhat resemble COM components in granularity, they are much more dynamic in that they can be added at runtime. All in all, I think they deserve their own name, and "Component" just isn't it. Regards, Karsten Otto (kao) _______________________________________________ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d