Client API pedantism
Robert Ancell
robert.ancell at canonical.com
Mon Apr 8 05:30:48 UTC 2013
On 08/04/13 15:16, Daniel van Vugt wrote:
> Hi all...
>
> It's nice that the Mir client API uses a common pattern that many C
> developers will find familiar:
>
> namespace_class_method(NamespaceClass *x, ...);
>
> I like it. Just be careful about breaking the pattern. For example:
>
> mir_surface_create(MirConnection *connection, ...);
>
> Arguably, this should instead be something like:
>
> mir_connection_createsurface(MirConnection *connection, ...);
>
> Because you're not operating on a surface (mir_surface_whatever) until
> the surface exists.
>
> I'm not sure I'd go as far as proposing a change to the above function
> any time soon. But it's worth keeping consistency in mind for future
> API additions.
>
> - Daniel
>
I agree we should be using namespace_class_method for names. Another one
that breaks this is:
int mir_debug_surface_id(MirSurface *surface);
Which I would expect to be:
int mir_surface_get_debug_id(MirSurface *surface);
I say it's not something that needs to fixed immediately, but can be
migrated over before 1.0.
--Robert
More information about the Mir-devel
mailing list