[glideplan_swproj] Re: CoreInterface name

  • From: Bohdan Maslowski <bohdan.maslowski@xxxxxxxxx>
  • To: glideplan_swproj@xxxxxxxxxxxxx
  • Date: Thu, 24 Nov 2011 02:32:56 +0100

Hi!

Are you sure it is not an interface? I don't know what is the usual
style of doing this in c++, but in Java or C# it feels natural to strongly
separate the  interface from the actual implementation in such cases. After
all, high-level modules should not depend on low-level modules and
low-level modules should definitely not depend on high-level modules. Both
should depend on abstractions. :) I'm not sure if header files are
considered abstractions... :)

Btw I like the IWhatever interface naming convention, It's used everywhere
in the .net framework and it feels right even in a language that has
language support for interfaces, I guess in c++ it would be even more
useful.

Last thing, I'm sorry but I won't make it for the meeting tomorrow.

See you on Tuesday!
Bohdan

On Wed, Nov 23, 2011 at 8:56 PM, Cestmir Houska <czestmyr@xxxxxxxxx> wrote:

> On Wed, Nov 23, 2011 at 8:50 PM, Kuba Marek <blue.cube@xxxxxxxxx> wrote:
>
>> > Hi all!
>> >
>> > I wonder if we should not change the name of the core interface class,
>> > because it is not an interface in the object-oriented sense of the
>> > word (whereas on the other hand the PluginInterface class is really an
>> > interface). I propose CoreAPI. Yeah, there's interface in the acronym
>> > as well, but it's not ambiguous anymore.
>> >
>> > Cestmir
>>
>> It's not an api either, only part of an api. Coreinterface was IMHO more
>> fitting name ... not that it matters (as long as the name doesn't
>> change while we're using it).
>>
>
> Yeah, I agree that it probably shouldn't change while in use. That's why I
> brought up the issue here. It IS an interface between plugins and the core,
> but it is NOT an interface class. Maybe we could change the naming
> conventions for the interface classes. Once I saw in a different project
> that they were appending the names of all interface classes with capital
> "I". So PluginInterface would become IPlugin. And CoreInterface would
> remain CoreInterface and it would immediately be apparent that the class is
> not an interface class.
>
> Cestmir
>
>
>

Other related posts: