PEAR DB_DataObject实现哪种设计模式?

时间:2020-03-05 18:46:13  来源:igfitidea点击:

DB_DataObject似乎不是ActiveRecord,因为我们不必将业务逻辑存储在"表"类中。看起来更像是表数据网关或者行数据网关,但我确实无法分辨。我需要的是可以与DataMapper和DomainModel一起使用的良好的ORM层。有任何想法吗?

解决方案

回答

单击此链接以阅读DB_DO是什么。简而言之,它没有实现特定的模式,只是旨在提供一个通用的接口。这个想法是不要在每个项目中重建相同的基本代码。

至于ORM,我建议使用Doctrine。它实现了ActiveRecord。

回答

听起来我们正在寻找的是类似IBatis for PHP的东西。可悲的是,这还不存在。实际上,我已经为正在处理的当前应用程序编写了一些基于PDO的自定义DataMapper内容,以实现持久性无知的域层。但是,开发和维护绝对是更多的工作,因此,我建议尽可能使用现有的数据层实现(例如Doctrine)来满足大多数需求。