我正在尝试弄清楚如何在从大量实现代码中创建公共API时正确使用名称空间。
我正在编写一个API,在我公司创建的所有代码上加上友好的公众形象,以便解决我们最常用的框架中的问题。
我的新项目的根命名空间称为“FrameworkSDK”。
在FrameworkSDK下,我有FrameworkSDK.CompanyNameLibrary,这是我公司创建的所有实现代码所在的位置。
我正在尝试编写PublicFacingAPI,理想情况下,它会在FrameworkSDK.CompanyNameLibrary之上放置一个很好的面孔,以便新开发人员可以立即开始使用它等等。
我应该在什么命名空间中放置新的PublicFacingAPIcode? p>
它应该放在FrameworkSDK.CompanyNameLibrary.PublicFacingAPI吗?然后每当开发人员导入这个dll时,这将是一个荒谬的使用语句。
我可以将代码放在FrameworkSDK命名空间中,但是我的所有公共类都需要使用FrameworkSDK.CompanyNameLibrary或使用FrameworkSDK.CompanyNameLibrary.SubNameSpace包含using语句。
这段代码应该放在哪里?
谢谢
答案 0 :(得分:1)
我没有发现SDK.CompanyNameLibrary.CompanyInternalAPI太荒谬了。这有点长,但它是描述性的,任何使用dll的人都会知道他们到底得到了什么。
答案 1 :(得分:1)
我不明白为什么你需要为面向公众的部分提供不同的命名空间。让所有尽可能友好,对于真正应该隐藏的位,将它们保留为内部类型。
然后我会删除“SDK”部分,并改为:
CompanyName.BclPlusPlus
或一些类似的项目名称,给人的印象是增强核心.NET框架。我肯定会将公司名称作为“根”分开。