我与队友就以下事项发生了争执。我们需要将一个字符串中的符号解析为int(它总是一个数字),这个特殊的功能被用在很多地方。因此,可以这样做:何时创建新功能?
var a = int.Parse(str[i].ToString());
参数是:我们需要为此创建一个函数。
int ToInt(char c) {
return int.Parse(c.ToString());
}
,可用于:
var a = ToInt(str[i]);
我的观点是,建立这样一个功能是坏的:它使任何好处,除了输入几个字符以下(无,因为我们有自动完成),但这种做法增加了一个代码库,并通过引入附加功能使代码更加复杂。我的队友的理由是,这只能称为一种这样的功能更方便,在这种做法中没有什么不好的。
其实问题涉及到一个概念:什么时候可以(如果有的话)将2-3-4函数的组合与新函数包装在一起? 所以我想听听你的意见。
我强烈建议,这主要是根据个人喜好定义的。但是我也希望听到一些客观因素来为我们的项目中的这种情况定义一个公约。
这是一个个人意见/机构特定的风格约定。 –
''我想听听你的意见'' - 就是这样,这完全基于个人意见。例如,另一个选项可能是为'string'和/或'char'编写扩展方法,它可以被称为:'someString.ToInt()'或者可能是一个用于这种转换的类(不同于, 'Convert'类已经存在)。对此,真的没有全部的技术规则。队友们可能会对这个问题持不同意见,因为这是非常有效的,但完全是主观的原因。 – David
我我并不是专家,但我相信你会为处理器做更多的工作来处理这个功能,因为它们会做同样的事情,再加上在堆栈中保存一些东西以及新功能的调用 – lazyy001