0

我的项目中有两个文件夹:APPLICATION 和 SYSTEM。系统包含CONFIG、CORE、HTML、URL等文件夹。它们中的每一个都包含一些类集。

我使用这个约定:类的命名空间反映了它的文件结构——这让我可以轻松地自动加载它们。

所以:\Project_Name\System\Core\Foo放在System/Core/Foo.php.

但是,对于我的代码的用户来说,调用这么长的名称并不是最快、最好的方法。那么两个问题:

  1. 可以使用 \Project_Name 之类的命名空间创建几个空类吗?在应用程序类中使用一个“使用”关键字,我会摆脱这个问题。但结果我会在“system/”的一个奇怪文件夹中得到很多空类和文件夹结构。
  2. 或者也许我应该\Project_Name在每节课上简单地使用?然而,这会让我推动创建更长的类名来反映文件结构,并使自动加载更难理解。

你认为最好的方法是什么?

4

1 回答 1

1

您忘记了解决方案 3:使用别名

use \Project_Name\System\Core\Foo;
use \Project_Name\System\Core\Bar as CoreBar;
$x = new Foo;
$y = new CoreBar;

这两种解决方案的问题在于,您让您的懒惰决定了您的应用程序结构。

于 2012-11-18T19:51:19.520 回答