我正在编写一个 Java EE 6 Web 应用程序,这实际上是我正在编写的第一个认真的应用程序。我注意到我的类有 500 到 1000 行,并且可能会更大。我不知道一个类应该有多大,或者它是否重要,但我不想继续编写巨大的类,如果它会对应用程序性能产生负面影响。你对我有什么建议?
“班级的第一条规则是它们应该小。班级的第二条规则是它们应该小于这个。”
\n\n类的名称应该描述它履行的职责。事实上,命名可能是帮助确定班级规模的第一个方法。如果我们无法为类派生一个简洁的\n名称,那么它\xe2\x80\x99 可能太大。类名越模糊,\n它就越有可能承担过多的职责。例如,包含诸如 Processor、Manager 或 Super 之类的狡猾词的类名通常暗示着职责的不幸聚合。
\n\n我们还应该能够用大约 25 个单词写出该类的简要描述,\n而无需使用 \xe2\x80\x9cif、\xe2\x80\x9d \xe2\x80\x9cand、\xe2\x80\x9d \n 等单词。 xe2\x80\x9cor、\xe2\x80\x9d 或 \xe2\x80\x9cbut.\xe2\x80\x9d 我们如何描述\nSuperDashboard?\xe2\x80\x9cSuperDashboard 提供对最后保持焦点的组件的访问,并且它还允许我们跟踪版本和内部版本号。\xe2\x80\x9d 第一个 \xe2\x80\x9cand\xe2\x80 \x9d 暗示 SuperDashboard 的职责过多。
\n\n我们希望我们的系统由许多小类组成,而不是由几个大类组成。每个小类都封装一个职责,\n有一个更改原因,并与其他几个类协作以实现\n所需的系统行为。
\n\nCOHESION = 类应该有少量的实例变量。类的每个方法\n应该操作一个或多个这些变量。一般来说,方法操作的变量越多,该方法与其类的凝聚力就越大。每个方法\n使用每个变量的类是最大内聚的。\n一般来说,创建这种最大内聚的类是不可取的,也是不可能的;另一方面,我们希望凝聚力较高。当内聚度很高时,意味着类的方法和变量是相互依赖的,并且作为一个逻辑整体挂在一起。
\n\n-摘自《干净的代码:敏捷手册》\n软件工艺
\n| 归档时间: |
|
| 查看次数: |
5359 次 |
| 最近记录: |