[sugar] Python coding conventions
Ian Bicking
ianb
Thu Sep 28 12:12:05 EDT 2006
Dan Williams wrote:
> On Thu, 2006-09-28 at 10:20 +0200, Marco Pesenti Gritti wrote:
>> Ian Bicking wrote:
> <snip>
>>> I guess the only other issue might be with the file layout, a little
>>> related to distutils. For instance, why is there
>>> source/sugar/services/presence and source/sugar/sugar/presence ?
>>>
>> source/sugar/services/presence is the dbus service. It's supposed to be
>> private API and it's installed in the datadir rather than in
>> site-packages. source/sugar/sugar/presence is the public API, installed
>> in site-packages.
>
> Slight correction here:
>
> sugar/services/presence is the D-Bus service, which could be written in
> C, C++, Mono, haskel, python, etc. It provides a _public_ D-Bus API,
> and should not go in a python-specific directory because stuff other
> than python uses it. If you write a C activity, you'll use it, just
> like you would use the Shell (which should also not go in
> python-specific directories). None of this could can or should be used
> directly by a python program, as the only _public_ interface for it is
> the D-Bus API.
Is this the same as saying that sugar/services/presence is the presence
daemon, and sugar/sugar/services/presence is the client code to access
that daemon?
If so, can these be named more distinctly? I think the potential for
confusion is obvious ;) Maybe presencemanager or presencehub or
something like that. Or not use sugar/sugar/services, but use some
other name for the client APIs.
Connecting to some of the other discussion, it seems that the daemon is
really an application, not a library, and so is handled differently.
--
Ian Bicking | ianb at colorstudy.com | http://blog.ianbicking.org
More information about the Sugar-devel
mailing list