4

在应用单一职责原则并查看类更改的原因时,您如何确定该更改的原因是过于细化,还是不够细化?

4

2 回答 2

1

除了“根据你的经验应用你的判断”之外,我不知道这个问题有什么好的答案。如果做不到这一点,请寻求帮助,我想这就是你在这里所做的;)

但是,说真的,如果你发现你正在创建一个庞大的类来完成看似简单的工作,那么你可能过于细化了。如果您的课程看起来都很庞大,那么您可能太粗糙了。如果这是显而易见的陈述,请原谅我。

我认为这是向我们展示为什么我们需要人类程序员的那些模糊的、没有硬性规则的案例之一。如果你发现你在一个方向或另一个方向上走得太远,只需尝试一些东西,寻求平衡并重构。请记住:如果值得做,那么做坏事也是值得的

于 2008-08-26T02:13:39.487 回答
1
  1. 最初我不会太担心粒度。最初,我将在更广泛的层面上进行关注点分离。基本点是我们应该避免在这里过度设计。但也够了。我同意卢卡斯的观点,这第一步将随着经验而改进。
  2. 随着需求的变化,当我开始闻到“气味”时,随着我对问题的理解的提高,我将通过分解单独的关注点来重构设计,因为它们变得很明显。基本上,关注点分离也应与整体设计一样是进化的。
于 2008-09-21T07:53:36.010 回答