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 > > >