几年前我开始在Perl编写代码。那时我想简化我的代码并使其更易于管理我会在.pm文件中将子程序组合在一起。例如,与生成报告相关的子进入" Report.pm"。
现在我回顾我的代码,因为我的绝大多数潜艇都是特定于程序的,所以我想知道是否有任何正当理由按照我的方式去做?我编写的程序通常是大约8K行代码,而我的代码在非常强大的服务器上运行(总是)。今天,拥有一个主.pl文件加上5 * .pm文件的概念似乎更像是要管理的文件,现在我想知道我是否应该将它全部放入单个.pl文件中?
答案 0 :(得分:2)
我不熟悉Perl,但在某种程度上,这在每种编程语言中都是相似的。
我认为将程序拆分为多个文件有三个原因:生产力,重用(这是严重伪装的生产力,或者至少应该是这样)和清晰度。
你说你只有程序特定的代码,所以你没有获得任何重用(至少是外部的)。我的经验是,几乎总是通用的东西已经存在于某个库中,并且大多数代码都是特定于程序的。随着程序的大小,重用“内部”变得更加重要,但只有你可以知道你是否重复自己。
生产力(更具手动意义)取决于工具。如果你可以点击一个函数调用并跳转到它的定义,即使是在另一个文件中,或者在任何地方重命名,最重要的是,准备一个发布而不需要手动浏览所有文件,你不要考虑将多个文件作为一个额外的家务。如果你没有这些东西,每个额外的文件都会带来额外的工作。
清晰度 - 如果你把所有东西都放在一个文件中,那么创建一个取决于很多东西的巨大整体块就会容易得多,而且经过一段时间后很难改变。如果将其拆分为合理的模块,您可以独立测试“叶子”模块,那么在需求发生变化时,您将更容易重构和更改。