我正在设计.NET库,我正在寻找有关类组织和命名空间的一些反馈.
假设我有一个Message位于根命名空间中的抽象类Foo.Message有许多针对不同消息类型的具体实现.鉴于将有许多具体的实现(让我们假设20,甚至更多),是否期望这些具体类型存在于一个单独的命名空间中,类似于Foo.Messages什么?
我担心使用太多具体Message类来混淆命名空间,我的库的用户很少需要直接使用.使用图书馆时你有什么期望?
编辑:
另外,如果我将具体类分组Foo.Messages,那么抽象类是否也应该存在,或者应该保留在Foo哪里?