我正在看着
DataMapper,它首先出现在使用ActiveRecord ORM模式.其他人说它使用DataMapper和/或域对象模式.
这些模式有什么区别?
@H_502_4@解决方法
这两种模式的主要区别在于:
>在ActiveRecord中,您有一个域对象既知道所有业务逻辑,又如何在数据库user.getLinkToProfile()和User :: find(1)中保存/更新自身,User :: save(user)
>在DataMapper模式中,您有一个拥有所有业务逻辑的域对象,用于exmaple user.getLinkToProfile()或类似的东西,但不知道有关数据库,除此之外,还有一个mapper对象负责从数据库中保存,更新,选择等用户对象,用户对象将具有UserMapper :: find(1),UserMapper.save(user)
DataMapper可能比ActiveRecord更复杂,但是使用ActiveRecord开发您的域模型和数据库异步起来要容易得多.
@H_502_4@ @H_502_4@ 原文链接:/ruby/265979.html