Here's对我要理解的规则的解释。这是代码分析器抱怨的简化代码:

Public Class CustomerSpeed

    Public Enum ProfitTypeEnum As Integer
        NotSpecified = 0
        FlatAmount = 1
        PercentOfProfit = 2
    End Enum

    Private _ProfitTypeEnum As ProfitTypeEnum

    Public Sub New(ByVal profitType As ProfitTypeEnum)

        _ProfitTypeEnum = profitType

    End Sub

End Class


如果枚举仅与该类有关,为什么将其包含在该类中是不好的事情?对我来说似乎更整洁了...

有人知道以下行是什么意思吗:

嵌套类型包括成员可访问性的概念,一些程序员对此并不了解。

使用命名空间对类和枚举进行分组似乎不是解决此警告的有用方法,因为我希望两个枚举都与类名称属于同一父级。

最佳答案

除了其他响应中已经涵盖的可用性和可发现性问题之外,还存在潜在的可维护性问题。发现您的枚举在其他地方也可能有用的那一天会发生什么?将其移出其父类将是一个重大变化,复制它会带来自身的可维护性问题,并且要求API使用者将其与另一个类一起使用会变得很丑陋。为什么不通过系统地避免嵌套枚举来避免这些潜在的问题?

07-26 02:07