|
|
1
0
如果您担心解析时间而不是代码质量,那么可以使用一些编译器缓存,例如 APC .
但是,如果您有一个大类,那么为了可读性,很可能应该将它重构为较小的类。如果在类中找不到您需要的东西(例如,修改它),那么它可能太大了,无法维护。
|
|
|
2
4
据我所知,您的数据库类基本上包含了整个应用程序中所有可能的查询(硬编码)? 实现数据库层抽象的更好方法是将查询抽象为内部一致的格式,并使用模型和数据库适配器将其转换为实际的SQL。例如。:
客户类映射到一个特定的表,如果需要,可以将架构映射到不同的列:
BaseModel将这些抽象查询转换为真正的SQL,具体取决于它需要与哪个数据库通信:
这样,您的数据库层就不会随着应用程序中需要进行的每一个新查询而呈指数级增长,同时仍然保持将查询映射到不同数据库的灵活性。这被称为 ORM . 更不用说,这实际上提供了更简单的抽象。不需要重写每个硬编码查询,只需要编写不同的数据库适配器。 正如Mewp在评论中建议的那样,一个好的开始的地方是 Doctrine . |
|
|
3
1
通常情况下,维护许多小类比较容易。对于mysql(主要与php一起使用),有几个类生成器可用: sourceforge: PHP Class Generator sourceforge: php Class Generator - PCG 也许你可以在那里找到新的想法。 |
|
|
4
0
在不知道DB方案的情况下很难判断,但是维护几个类总是比维护一个大类容易(例如每个逻辑实体/DB表一个类) 您不必担心解析时间,因为对数据库的请求(以及任何网络请求)总是需要更长的时间。 |