论坛首页 Java企业应用论坛

业务层设计的问题

浏览 3239 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-12-14  
我是个设计初学者,目前在做一个blog,建好了数据库,准备开始设计业务层,发现无从下手:是应该每个操作对应一个业务对象呢,还是每个页面对应一个业务对象,或者是每个数据库表对应一个业务对象?

还有,我知道DAO需要抽象,是为了持久层的切换,可是业务层的抽象又是为了什么呢?
   发表时间:2007-12-14  
每个操作对应一个业务对象,先提供基本的原子操作 在包装到业务逻辑里面,页面只是引用业务逻辑里面的具体方法来操作。
0 请登录后投票
   发表时间:2007-12-14  
qmy 写道
我是个设计初学者,目前在做一个blog,建好了数据库,准备开始设计业务层,发现无从下手


对于初学者来说,这样的思路没哟太大问题,但是要搞清楚一点,实际的设计工作应该从业务对象和业务逻辑开始的,数据库只是用来考虑如何去存储这些对象能够更加高效一些。

至于设计业务层,有两种思路,一种是以实体为中心,另一种以任务为中心。
以你的BLOG系统来说,应该以实体对象为中心设计比较好。

比如 帖子服务(包括发帖、删帖、回帖、改贴等等与该实体相关的操作),然后抽象接口,最后实现这些接口
0 请登录后投票
   发表时间:2007-12-14  
那对业务层的抽象是为了什么呢?

难道在业务接口不变的情况下,业务的实现也有多种?还是只是为了分工,写接口的专写接口,实现部分留给专门写实现的人来写?
0 请登录后投票
   发表时间:2007-12-14  
freesoul 写道
qmy 写道
我是个设计初学者,目前在做一个blog,建好了数据库,准备开始设计业务层,发现无从下手


对于初学者来说,这样的思路没有太大问题,但是要搞清楚一点,实际的设计工作应该从业务对象和业务逻辑开始的,数据库只是用来考虑如何去存储这些对象能够更加高效一些。

至于设计业务层,有两种思路,一种是以实体为中心,另一种以任务为中心。
以你的BLOG系统来说,应该以实体对象为中心设计比较好。

比如 帖子服务(包括发帖、删帖、回帖、改贴等等与该实体相关的操作),然后抽象接口,最后实现这些接口

有所收获,非常感谢!
0 请登录后投票
   发表时间:2007-12-14  
qmy 写道
那对业务层的抽象是为了什么呢?

难道在业务接口不变的情况下,业务的实现也有多种?还是只是为了分工,写接口的专写接口,实现部分留给专门写实现的人来写?


你说的这两种情况可能都有,比如收邮件有pop3和imap两种协议,对这一个动作我们不得不写两个实现,我们做项目一般是把接口先写出来,然后在慢慢实现,当然根据实际需要后面可能还会动接口中的方法。

打个比方吧,我让你去睡觉明天精精神神来上班,我不管你昨天晚上怎么睡的觉和谁睡的觉,明天能精精神神来上班就是好同志
0 请登录后投票
   发表时间:2007-12-15  
参考:分层架构设计
http://fangzhouxing.iteye.com/blog/147125
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics