组织课程 - 最佳实践?

时间:2010-09-17 23:17:32

标签: php class file-structure

关于PHP类最佳实践的快速问题。我见过人们使用something.class.php等文件名来组织外部文件中的类。

因此,最佳做法是每个类有一个文件,或者每个文件有多个类。

目前,我正在编写RPG脚本并拥有一个class_lib.php文件。我目前在那里只有与字符相关的类,在我再进一步之前,想知道是否更适合将类分组保存在文件中,将所有类放在一个文件中,或者将每个类保存到自己的文件中。 / p>

每种方法的优点/缺点是什么?

制作此CW因为它可能没有明确答案

5 个答案:

答案 0 :(得分:1)

他们是两种方法的利弊。将类分隔为单独的文件允许您在需要更新类时立即知道要修改的文件,并将与该类相关的所有逻辑保存在同一位置。从源代码存储库的角度来看,分离文件也是有益的。它增加了包含大量文件的负载量,但这很可能是微不足道的。另一个缺点是必须在编码过程中打开大量文件,如果您决定在结构中使用文件夹,那么导航可能会很麻烦。

在同一个文件中使用相关类比任何东西都更方便,并且可能会弄清楚哪个文件包含您需要修改的类。

如果您的项目不是非常大,那么很可能由您决定如何组织它。但请考虑一下“如果我在6个月内没有触及代码,我会记得去哪里编辑这门课程吗?”

答案 1 :(得分:1)

每个类一个文件,只有在需要时才自动加载

答案 2 :(得分:1)

将类保存在单独的文件中允许autoloading。可以想象,它可能有助于提高性能,如果一些类 - 你原本会放在一个大文件中 - 很少使用(N.B.,这只是盲目的推测。自动加载本身可能会产生抵消性能成本。)

答案 3 :(得分:0)

这取决于品味和课程的大小。分离纯粹是为了组织。因此,如果您认为在一个文件中更容易,或者每个文件一个类,则取决于您。

优点:更容易找到你想要的东西。少滚动!

缺点:文件之间不断切换。在动态制作新课程时可能会很烦人。

答案 4 :(得分:-2)

一个班级,一个档案。 IMO,从组织的角度来看,它更容易。

其他提示:

  • 将继承级别和参数列表保持在绝对最小值。任何超过5或6的变得有点过于复杂
  • 使用限制性最强的范围限定符