JiveJdon Community Forums
在线421人   首页   主题表   培训咨询   标签   精华   查搜   注册    登陆 RSS
首页 » 论坛 » 设计模式、框架和架构
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表
???en_US.forumThreadNext.name??? 下一主题
Go 总共有 3 回复 / 1
 发表新帖子   回复该主题贴
hlayy

悄悄话
发表文章: 68
注册时间: 2006年08月03日 11:29
jive问题 2006年10月08日 22:17 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
标签列表
在JIVE的架构中,使用了大量的接口,基本上每个类都有一个相应的接口。感觉是先用接口定义了网站的骨架,然后实现了每个接口的功能。请问有必要用大量的接口和工厂么?这样做是否妥当
banq

悄悄话
发表文章: 9481
注册时间: 2002年08月03日 17:08
Re: jive问题 2006年10月10日 10:25 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
面向接口编程啊。

Jive的设计代表面向对象设计的一个阶段,在这个阶段,抽象和行为混淆在一起(当然,从对象角度来说代表一个完整对象),对象相互调用通过行为接口实现。这样设计好处很明显:每个对象有属性抽象,也有行为,缺点是:随着对象数量增加,容易混乱,而且对于权限 缓存等计算机特有的组件功能加入不方便。

在领域建模中,我们已经明白:这些对象其实是业务系统的模型抽象,但是这些模型对象是生活在计算机这样一个环境中,那么是模型对象自己在计算机环境中自己主动跑,还是由一些服务行为驱动它们跑呢?

当然后者更加自然,因此,现在我们有抽象和行为分离,将行为用服务service概念来代表,由服务指挥调度那些代表业务概念的模型对象进行运作,这样做:也就是类似语言中名词和动词分开,具体使用时再结合起来表达一个完整意思。

现在我们通常使用Model/Service来表达业务系统,Service对外都是以接口形式被调用,也是面向接口编程
hlayy

悄悄话
发表文章: 68
注册时间: 2006年08月03日 11:29
Re: jive问题 2006年10月10日 11:30 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
谢谢BANQ,你告诉了我为什么要把抽象和行为分开(也就是说把属性和方法分开,对吧?)。

我的理解是,你建议我面向接口编程,对么?

面向接口编程的缺点:为每一个行为都要写一个接口,工作比较大。

面向接口编程的优点:1,隐藏了实现,对外只接口可见;2,可以很容易的改变实现的方法

有一个例子,jive的Forum工厂接口里的createForum一样,一个实现是先通过这个方法验证权限,另一个实现是把验证好权限的通过再次调用createForum接口,新建一个Forum.

顺序图
工厂 实现一(权限代理) 实现二(新建论坛)

1――――――――》2

3《――――――――

――――――――――――――――――――》

这是使用了接口,要不使用接口,可能就变成了

顺序图
工厂 实现(权限代理) 论坛类(新建论坛)

1――――――――》2――――――――》3


这两种方法,您能帮我把优缺点对比一下么?是不是方案一增加了可复用性,实现一,实现二可以复用。而方案二中,论坛类需要与权限代理相关联,也就是带入了其他类,影响复用?

hlayy

悄悄话
发表文章: 68
注册时间: 2006年08月03日 11:29
Re: jive问题 2006年10月10日 15:40 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
另外,关于“域建模”的时候,权限该怎么联系。

是不是该把权限类与用户类关联。然后业务类与用户类关联?


权限类――>用户类――>新闻类
这个主题有 3 回复 / 1Go
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表    返回页首返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG: AOP cache 缓存 DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Seam Spring Struts
正在读取,请等待...
google yahoo 新浪ViVi 365Key网摘 天极网摘 CSDN网摘 添加到百度搜藏 POCO网摘 博采网摘
查询本论坛内 回复超过的热门帖子
     回复该主题贴
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
  发贴前查询 标签列表勿重复发表问题

RSS 手机阅读 add to google add to yahoo
解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-08 jdon.com
anti spam