一个大的实用程序或分成不同的部分?

时间:2011-07-14 11:28:11

标签: maintainability code-maintainability

我正在编写一个应用程序,一些程序员会参与其中。我们在管理源代码时遇到了一些问题。我们通常有一个Utility.php,它在不同的用户之间共享。所以,我们制作了一个很大的utility.php,每个人都在称这个......

但是我们发现了一个问题......例如,当我们想要分离项目时,我们有CMS的字体结尾和后端。当我们想要分离现有项目时,我们需要将大的utility.php分隔到位,或者复制一次或在其他项之间同步。因此,我们正在考虑使用不同的小实用程序,这些实用程序仅在相关类中使用。有什么建议??

电流: FontEnd.php正在调用 - > Utility.php BackEnd.php正在调用---> Utility.php

考虑到: FontEnd.php正在调用 - > StyleUtility.php,ClientUtility.php,bababa BackEnd.php正在调用---> DBUtility.php,MaintainUtility.php,ababba

1 个答案:

答案 0 :(得分:2)

你应该从不让自己处于你有GOD课程或模块(那些在阳光下完成每项工作的人)的情况。

他们应该做好一件事 - 这是单一的责任原则。如果您有一个执行数据库调用和用户界面布局的模块,那么您就错了。

您应该遵循的规则是最大化凝聚力并尽量减少耦合。

最大内聚意味着单个模块中的所有内容应该彼此密切相关(例如,单个模块中的所有数据库接口,另一个模块中的所有文件I / O以及另一个模块中的所有统计功能)。

最小耦合意味着类之间不应存在不必要的依赖关系。应该为数据库模块定义一个定义良好的API,并且应该有 no 方式来处理绕过该API的数据库内容。

换句话说(例如),将压缩和窗口管理功能集中在一个模块中是一个坏主意。无论如何都要有压缩实用程序模块和窗口管理模块,但不要将它们放在一起。