更好的MongoDB文档对象映射器设计模式


Better design pattern for MongoDB document-object-mapper

我是YiiMongoDbSuite的作者,该扩展在ActiveRecord模式中带来了MongoDB支持,与核心Yii中已经提供的SQL非常相似。

我的代码变得非常流行,因为它的编写意图与 SQL 数据库的原始 Yii 方法几乎相同,以缩短学习曲线,唯一的两个主要区别是缺乏关系支持(因为 mongo 中没有这样的东西)和不同的标准对象。

我发现我的代码非常有趣且易于使用,特别是对于已经使用 Yii 的 mongo 新手,但我也发现/认为经过几个月的新功能和使用我的代码,ActiveRecord 设计模式对于面向文档的数据库来说不是一个好的选择,我也认为 AR 模式本身是 mongo 真正力量的限制器(即新学说已经放弃了 AR 模式,即使在数据库的)。

所以我的问题是,可以使用哪些替代设计模式来"释放"MongoDB/面向文档的数据库的全部"力量"?

也许DataMapper模式就是你需要的。
这种模式可以通过不同的能力以不同的方式实现。
在这本书中可以找到更多的解释:http://www.amazon.com/php-architects-Guide-Design-Patterns/dp/0973589825/