0

假设您需要反转字符串。

您可以创建一个名为 reverseString 的方法。但是你会考虑创建一个名为 StringReverser 的类吗?如果不是,您使用什么标准来决定需要上课?

PS:这可能涉及到系统分析的话题。如果您熟悉一些可以清楚地回答问题的问题或经验法则,请分享。

4

2 回答 2

1

这是一个判断电话。

在这里,我们正在查看执行单个操作且不需要状态的单个函数。此外,不需要多态行为。在这些情况下,我会创建一个 static[1] 类或一个名为 的模块StringUtils,并将函数放在那里。我会将其他类似的功能放入同一个类/模块中。

[1] “静态”是指完全由静态方法组成的类。

于 2013-06-29T11:46:15.150 回答
1

仅当您具有实例状态时才创建实例类:也就是说,如果您表示内存中的持久对象。

如果反转字符串的行为需要持久状态或配置,我只会创建一个StringReverser类 - 但我想不出任何东西,所以我不会。

String.Concat(params String[] strings)但是考虑到方法和类之间的区别StringBuilder,它们都做同样的事情(将字符串连接在一起),但是StringBuilder具有可以在消费者之间传递的状态,这不是你可以用.Concat方法做的事情。

于 2013-06-29T11:47:10.550 回答