1

我正在尝试学习 MVC,我有一个可能是一个非常基本的问题。当我创建类和对象时,我可以像使用 JavaScript 一样将所有这些放在一个文件中吗?还是我需要为每个类和构造函数创建一个单独的文件?我在这里看过很多例子,但对我来说似乎没有什么是非常确定的。

4

3 回答 3

5

您不需要每个类使用单独的文件,但这样做是一种很好的做法。使用许多较小的文件而不是几个非常大的文件要容易得多。它还将使需要从事该项目的任何其他开发人员的生活更轻松。

于 2013-05-15T17:09:19.530 回答
2

通常,MVC 模式总体上遵循为 OOP 设置的基本规则:一个类 = 一个文件。

此规则可能有例外,具体取决于您可能使用的框架或 CMS,但在文件中放置多个(不相关的)类往往会使项目复杂化。

将几个相关的类合并到一个文件中可能是可以的,但我仍然建议不要这样做。

于 2013-05-15T17:10:30.140 回答
-1

使用尚未提到的单独文件的好处之一是您可以使用该__autoload()函数仅根据需要加载类并减少加载应用程序所需的开销。

如果一个特定的执行只需要少数几个类定义,为什么要加载整个单一文件或文件目录?

这是我在全局包含文件中使用的内容:

define('__SITE_PATH', '/path/to/app');
/* auto load model classes */
function __autoload($class_name) {
    $filename = 'class.' . strtolower($class_name) . '.php';
    $file = __SITE_PATH . '/_model/' . $filename;
    if( file_exists($file) == false ) {
        return false;
    }
    require($file);
}
于 2013-05-15T17:43:31.557 回答