浏览 5473 次
锁定老帖子 主题:再论domain model
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2004-09-28
1、domain logic中应该写些什么呢?特定的业务逻辑?使用策略模式的业务逻辑? 2、使用domain model后,应该如何分层呢?service层又该承担一些什么东东呢?facade?业务逻辑facade?还是存取逻辑facade? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2004-09-28
1.domain logic里应该完成某一个和该domain object相关的业务逻辑,或者说可以被认为是该domain object的一种行为的业务逻辑。这种业务逻辑可以是一个策略算法,也可以是创建其他domain object并调用他们的行为方法。
2. 使用了domain model后,由于domain object本身也是业务数据的封装,因此需要orm层来将其持久化。如果需要远程调用,则可能需要facade,应该算是业务逻辑的facade。此外service层还有可能提供事务处理等等机制。 |
|
返回顶楼 | |
发表时间:2004-09-28
spring1.1带得jpetstore 得domain模型值得新人去看 logic里包括了一些domain本身的validator和petstorefacade和petstoreImp等,service里只有一个rmi订单服务
|
|
返回顶楼 | |
发表时间:2004-09-28
spring1.1带的jpetstore,其实我认为这也是domain model,但是曾经在gigix的blog上看到,jpetstore仍是采用的transaction script,其实我也有点不解,或者如gigix对G-roller的评价:东西太简单了,ts和domain model并没有本质的区别。
|
|
返回顶楼 | |
发表时间:2004-09-28
PAEE中讲到的DomainModel,是DomainObject+DomainLogic。DomainLogic就是纯粹的业务逻辑。
不过表现出的形式有些不同,可以是纯粹的POJO+业务逻辑的Service,也可以是含有业务逻辑(DomainLogic)的一个完整的DomainObject。 是否用策略模式实现,要看具体的需要了。 个人认为,如果业务相对简单的话,将逻辑写在DomainObject内,会更加的方便,不需要特别的Service或Facade。 |
|
返回顶楼 | |
发表时间:2004-09-29
我觉得domain model最重要的一点应该是 业务逻辑的复用,所以非通用的业务逻辑不应该写在domain object里,今天又看了一下jpetstore ,我觉得也是使用了domain model模式,不明白为何gigix说jpetstore仍是采用transaction script模式。
至于service里面,不应该含有业务逻辑,那么至于service中应该包含什么,看了jpetstore后,觉得应该是Sayor所说的业务逻辑facade,既然是facade自然有facade模式的好处,service层有存在的必要,不能省略 |
|
返回顶楼 | |