on the use of generic interfaces [was: Re: ORBit2 and async stuff]



On 31 May 2001 19:21:21 +0200, Martin Baulig wrote:
>
> If you look at libgnome/idl/Gnome_Selector.idl - the CORBA API is now almost
> fully API documented.
> 
> I also painted a nice "Anatomy of a GNOME Selector" diagram - look at the
> Gnome_Selector.idl for the URL.

so, i am still kind of confused as which problems this stuff is all
supposed to be solving. i see a tremendously complex CORBA and C
interface (gnome-selector.h contains 36 api calls), but i don't see
what this is all for.

so i will just say some in-general comments about doing interfaces and
such with bonobo that i think are true, and have been overlooked with
the design of this.

you can do such an immense amount of things with the simple interfaces
bonobo provides.  and when you do use these interfaces, you get some
added advantages:

	1) the interface is already debugged
	2) you are re-using code
	3) you don't add build-time dependencies
	4) you know how to use the interface
	5) the people using your components know how to use the interface

while all of these are large wins, and i could go on further about each
of them, i'll stick to #5 as i feel that is a point that might be
neglected.

currently in gnome, you have to learn how each different library works.
 they often times have different ref/unref calls, ways of doing things,
etc, and are in general not consistent at an api level with the
libraries that surround them.

but, with bonobo and reusing existing interfaces, we have a small and
versatile set of interfaces which developers HAVE TO LEARN ANYWAY.  so
when they come to using your components, and you use these interfaces,
they ALREADY KNOW how to use your component.

it's like when the girl in jurassic park sits down at the controlling
computers and exclaims, "This is UNIX!  I know this!"

think to yourself, "This is a Property Bag!  I know this!!"

jacob
--
In the afterlife, a cute .signature will only get you so far.





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]