namespace-organization – 在c#中的不同命名空间中使用具有相同名称的类是一个好主意吗?

前端之家收集整理的这篇文章主要介绍了namespace-organization – 在c#中的不同命名空间中使用具有相同名称的类是一个好主意吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
例如,我们有两个用于解析简历的类,一个用于解析Excel,另一个用于解析 HTML.我的同事喜欢做的是将这两个类命名为相同的名称并将它们放入不同的命名空间,如下所示:
namespace XX.ResumeParsers.Excel
class ResumeParser{}

namespace XX.ResumeParsers.Html
class ResumeParser{}

我觉得这不是一个好主意,我宁愿重命名这些类,并将它们放入一个命名空间(但如果需要,可以放在不同的文件中):

//in Excel folder under ResumeParsers folder
namespace XX.ResumeParsers
class ExcelResumeParser{}

//in Html folder under ResumeParsers folder
namespace XX.ResumeParsers
class HtmlResumeParser{}

因此,Hierarchy仍然存在于文件夹中,但命名空间是相同的(与文件夹层次结构完全不匹配),是吗?

如果我是对的,任何想法如何说服我的同事?或者他们的解决方案有任何明显的缺点吗?

谢谢.

解决方法

这通常不是一个好主意,不是 – 特别是如果你需要使用相同代码中的两个类.它们是否应该位于不同的命名空间中是一个单独的决定,但我肯定称它们为HtmlResumeParser和ExcelResumeParser,而不是试图使命名空间与上下文通信.这将使您在阅读代码时更准确地确定您正在谈论的内容.

猜你在找的C#相关文章