【发布时间】:2011-06-21 11:54:14
【问题描述】:
我正在开发一个相当简单的 OO PHP 框架(我猜在这种情况下并不重要..),具有以下基本结构:
application/
classes/
controllers/
includes/
models/
views/
classes/
includes/
我知道使用接口而不是硬编码类是 OOP 的良好做法,但我不确定在接口目录和文件的实际位置/结构方面的最佳做法是什么。
接口是否应该在一个目录下分成多个文件:
interfaces/
iDatabase.php
iRouter.php
或者应该把它们都放在一个文件中,因为它们不是那么大:
includes/
interfaces.php (with all Interfaces inside)
使用第一个选项,我可以使用自动加载器来加载接口,而不必加载每个文件,而并非所有文件都可以使用,而使用第二个选项,它们最初都会被加载,但这样我就不必加载多个文件每次。
你的想法是什么?我是不是完全看错了(我倾向于解决我的大部分问题,直到有人引导我朝着正确的方向前进!哈哈)
谢谢大家!
瑞恩
2011-02-07 编辑:
在阅读了迄今为止给我的答案后,我尝试了一些方法。
假设下面的类是从磁盘上的确切位置自动加载的(Database_Database 将在 'classes/Database/Database.php' 中加载),这样设置是否有效?
class Database_Mysql_Database extends Database_DatabaseAbstract implements Database_Database {}
Database_Mysql_Database是一个普通类,Database_DatabaseAbstract是一个抽象类,具有不同类型数据库通用的基本方法,Database_Database是用户将输入提示以确保与他们的类兼容的接口。
我走对了吗?
【问题讨论】:
标签: php oop interface directory-structure