【发布时间】:2010-11-19 06:23:23
【问题描述】:
您对如何组织和命名实用程序类有任何意见吗?
每当我遇到一些代码重复时,可能只是几行代码,我将它们移动到一个实用程序类。
一段时间后,我倾向于得到很多小的静态类,通常只有一个方法,我通常将它们放在一个 utility 命名空间中,而这个命名空间会因类而变得臃肿。
例子:
ParseCommaSeparatedIntegersFromString( string )
CreateCommaSeparatedStringFromIntegers( int[] )
CleanHtmlTags( string )
GetListOfIdsFromCollectionOfX( CollectionX )
CompressByteData( byte[] )
通常,命名约定告诉您将您的类命名为名词。我经常学习很多课程,例如HtmlHelper、CompressHelper,但它们的信息量不是很大。我也尝试过像HtmlTagCleaner 这样非常具体,通常每个实用程序方法都有一个类。
您对如何命名和分组这些辅助方法有任何想法吗?
【问题讨论】:
-
如今,无论您如何命名此类实用程序类,将每个方法设为其第一个参数的Extension method 通常是个好主意。然后它可以像第一个参数类的方法一样被调用,避免显式声明实用程序类名称的混乱。
-
... 从 C# 6.0 开始,有一个替代解决方案,using static。
-
这个问题缺少关于 OP 使用哪种语言的关键细节。很少有约定可以普遍适用于所有语言,甚至所有常见语言。