ruby-on-rails – ActiveRecord模式与Domain Object或Data Mapper模式有何不同?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – ActiveRecord模式与Domain Object或Data Mapper模式有何不同?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在看着 DataMapper,它首先出现在使用ActiveRecord ORM模式.其他人说它使用DataMapper和/或域对象模式.

这些模式有什么区别?

@R_404_323@

这两种模式的主要区别在于:

>在ActiveRecord中,您有一个域对象既知道所有业务逻辑,又如何在数据库user.getLinkToProfile()和User :: find(1)中保存/更新自身,User :: save(user)
>在DataMapper模式中,您有一个拥有所有业务逻辑的域对象,用于exmaple user.getLinkToProfile()或类似的东西,但不知道有关数据库,除此之外,还有一个mapper对象负责从数据库中保存,更新,选择等用户对象,用户对象将具有UserMapper :: find(1),UserMapper.save(user)

DataMapper可能比ActiveRecord更复杂,但是使用ActiveRecord开发您的域模型和数据库异步起来要容易得多.

猜你在找的Ruby相关文章