【问题标题】:Organising classes - Best practice?组织课程 - 最佳实践?
【发布时间】:2010-09-17 23:17:32
【问题描述】:

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

那么,最好是每个类有一个文件,还是每个文件有多个类。

目前,我正在编写一个 RPG 脚本并拥有一个 class_lib.php 文件。我目前只有与字符相关的类,在我继续之前想知道将类分组在文件中,将所有类放在一个文件中,还是将每个类保存在自己的文件中是否更合适。

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

制作这个 CW,因为它可能没有明确的答案

【问题讨论】:

标签: php class file-structure


【解决方案1】:

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

在同一个文件中拥有相关的类比什么都方便,而且可能会让人难以确定哪个文件包含您需要修改的类。

如果您的项目不会太大,则很可能取决于您希望如何组织它。但是从“如果我在 6 个月内不碰代码,我会记得去哪里编辑这个类吗?”来考虑它?

【讨论】:

  • 如果您使用的是现代 IDE,通常您可以通过项目代码浏览器导航到任何函数或类。 Eclipse 和 PHPEdit 浮现在脑海中。这种存储类的摘要。
【解决方案2】:

每个类一个文件,仅在需要时自动加载以包含它们

【讨论】:

    【解决方案3】:

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

    【讨论】:

      【解决方案4】:

      这取决于您的品味和班级规模。分离纯粹是为了组织。因此,如果您认为在一个文件中或每个文件一个类会更容易,这取决于您。

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

      缺点:文件之间经常切换。在制作新课程时可能会很烦人。

      【讨论】:

        【解决方案5】:

        一个类,一个文件。 IMO,从组织的角度来看,这更容易。

        其他提示:

        • 将继承和参数列表的级别保持在最低限度。超过 5 或 6 就有点太复杂了
        • 使用最严格的范围限定符

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-01-24
          • 2012-01-08
          • 2010-10-19
          • 1970-01-01
          • 2014-02-12
          • 2011-03-14
          相关资源
          最近更新 更多