sharpdx / SharpDX

SharpDX GitHub Repository
http://sharpdx.org
MIT License
1.69k stars 638 forks source link

Interfaces should be prefixed with "I" #905

Closed Axiverse closed 7 years ago

Axiverse commented 7 years ago

Following .NET convention, interfaces should start with I. I'm especially looking around DirectWrite font collections like the interfaces FontCollectionLoader and FontFileLoader. Is there any reason why they shouldn't be prefixed?

xoofx commented 7 years ago

Because COM interfaces in SharpDX were mapped automatically by removing the I, as they are mainly used as "concrete class" like Direct3D11.Device or DirectWrite.Factory. For some callback interfaces - that can have both a concrete class and can be user implemented this is the same. And for purely user implemented interfaces, the code generator from C++ kept also the same rules. There was also in the old age of the library to keep compatibility API with SlimDX.

So it is mostly a legacy choice with some constraints, but as SharpDX is now in maintenance mode, won't make any changes related to this.