论坛首页 Java企业应用论坛

Spring带来了什么?OOD学而无用

浏览 68767 次
精华帖 (0) :: 良好帖 (9) :: 新手帖 (19) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-04-19   最后修改:2013-04-19
gdpglc 写道
suene 写道



Controller  --> DomainService  --> Repository<Domain> 这样的方式,一样可以 DDD .


你这个和 action service dao 有什么区别?这不还是事务脚本吗?


好吧,如果你只看设计,就不要去想 WEB 的技术实现了.
去设计你的 Domain 吧.


然后你再来说用什么框架,用什么技术去实现.
0 请登录后投票
   发表时间:2013-04-19  
suene 写道
gdpglc 写道
suene 写道



Controller  --> DomainService  --> Repository<Domain> 这样的方式,一样可以 DDD .


你这个和 action service dao 有什么区别?这不还是事务脚本吗?


好吧,如果你只看设计,就不要去想 WEB 的技术实现了.
去设计你的 Domain 吧.


然后你再来说用什么框架,用什么技术去实现.


把dao改个名就能称为OOD或DDD...

没看懂你要说什么?
0 请登录后投票
   发表时间:2013-04-19  
gdpglc 写道
suene 写道
gdpglc 写道
suene 写道



Controller  --> DomainService  --> Repository<Domain> 这样的方式,一样可以 DDD .


你这个和 action service dao 有什么区别?这不还是事务脚本吗?


好吧,如果你只看设计,就不要去想 WEB 的技术实现了.
去设计你的 Domain 吧.


然后你再来说用什么框架,用什么技术去实现.


把dao改个名就能称为OOD或DDD...

没看懂你要说什么?


你引用的那个 08 年那个帖子,就简单的说了 DAO 和 Repository 的区别.只是改个名字么?
看来沟通有困难啊.
设计可以去按照 OOD 去设计, 但实现用不用 Spring ,用不用 Controller  --> DomainService  --> Repository<Domain>,层次关系,那是另外一个问题.

当然,我说的也未必对,但我能看懂你说的,我只是发表下看法. 
我觉得我说的很清楚了,你如果还看不懂.....继续坚持你的观点吧......
0 请登录后投票
   发表时间:2013-04-19  
DDD 中,提到的理念. 维护 Domian 的生命周期是使用 Factory Repository.

Repository 和以前的 DAO(Data Access Objects) 是不一样的.( 虽然实质上都是执行sql的东西)

但一个是操作数据库,一个是操作持久化对象.
概念上的东西.你要说就是改了个名字..................
0 请登录后投票
   发表时间:2013-04-19   最后修改:2013-04-19
其实这个贴子我本来就没想讨论spring能不能充血这个问题。否则标题就该叫:spring不能实现充血模型。

我主要针对的spring应用的现状来思考的。

把目光放在技术里是找不到spring和ood的因果关系的。我也没说过因为有了spring所以不能OOD。

我说的是web项目在作技术选择时,spring的过程表达简单易行,是软件架构的首选。这种情况下OOD就是次要的了。

贴子里多数人不是在讨论这个主题。

希望再看到这个贴子的人,能明白我说的意思。
0 请登录后投票
   发表时间:2013-04-19  
gdpglc 写道
其实这个贴子我本来就没想讨论spring能不能充血这个问题。否则标题就该叫:spring不能实现充血模型。

我主要针对的spring应用的现状来思考的。

把目光放在技术里是找不到spring和ood的因果关系的。我也没说过因为有了spring所以不能OOD。

我说的是web项目在作技术选择时,spring的过程表达简单易行,是软件架构的首选。这种情况下OOD就是次要的了。

贴子里多数人不是在讨论这个主题。

希望再看到这个贴子的人,能明白我说的意思。


大神,那你这个标题 : Spring带来了什么?OOD学而无用
不是因果关系的意思?

好吧,我想起来了,小学老师教过用 ? 分割的是两句话.呵呵.
你另外开帖吧.
0 请登录后投票
   发表时间:2013-04-19   最后修改:2013-04-19
suene 写道

设计可以去按照 OOD 去设计, 但实现用不用 Spring ,用不用 Controller  --> DomainService  --> Repository<Domain>,层次关系,那是另外一个问题.



这个想法,是很奇怪的。

设计中包括实现框架是必然的,这显然是一个重要的设计内容,除非已形成约定。

设计应该可以简单的翻译成实现。

如果设计做完了,还有许多不确定因素,那完成的部份也可能是不稳定的。
0 请登录后投票
   发表时间:2013-04-19   最后修改:2013-04-20
suene 写道
gdpglc 写道
其实这个贴子我本来就没想讨论spring能不能充血这个问题。否则标题就该叫:spring不能实现充血模型。

我主要针对的spring应用的现状来思考的。

把目光放在技术里是找不到spring和ood的因果关系的。我也没说过因为有了spring所以不能OOD。

我说的是web项目在作技术选择时,spring的过程表达简单易行,是软件架构的首选。这种情况下OOD就是次要的了。

贴子里多数人不是在讨论这个主题。

希望再看到这个贴子的人,能明白我说的意思。


大神,那你这个标题 : Spring带来了什么?OOD学而无用
不是因果关系的意思?

好吧,我想起来了,小学老师教过用 ? 分割的是两句话.呵呵.
你另外开帖吧.


是因果关系,但不是技术范畴内的直接因果。是项目技术选择、风险控制层面的因果。仔细思考一下吧,我显然和你的数学老师说的不是一回事。

只把Dao改成Factory Repository是不能实现OOD的。
比较直观的问题,如何在领域对象中访问数据库?

suene 写道
我觉得LZ最大的分歧在于OOD 的话. 把Domain 的行为写在 Domain 里才算是 OOD.
设计的时候可以看作 Domain 去设计,实现的时候也可以写在 Service 里.
一个 Domain 对应一个 Service. 仅此而已.


你理解我说的意思。但你的想法和结论都是不着边际的。

1.OO的基本思想就是通过有行为的对象构建程序,这没什么可分歧的。

2.你的意思等于是说:OOD的设计最后转换成面向过程的实现(事务脚本)。设计和实现采用两种形式,这不是给自已找麻烦吗?OOA OOD OOP,一个很大的优点是没有语义断层。你的做法是努力的加大语义断层。

你的想法真的很奇怪。把dao改个名,原来怎么实现现在还怎么实现,然后自已就认为是OOD了,有点啊Q的感觉。

在领域对象里放入业务逻缉这是充血的基本含意。如果你认为service类就是领域类,那就没必要讨论了。
0 请登录后投票
   发表时间:2013-04-20   最后修改:2013-04-20
这个贴子里很多的发言其实都是在证明我的结论。

关于OOD的认识,十个人能说出来八个样来。

但是提到spring的常规用法,大家都知道。

在软件必须团队开发的今天,你是项目经理,你会用OOD吗?
0 请登录后投票
   发表时间:2013-04-21   最后修改:2013-04-21
gdpglc 写道
这个贴子里很多的发言其实都是在证明我的结论。

关于OOD的认识,十个人能说出来八个样来。

但是提到spring的常规用法,大家都知道。

在软件必须团队开发的今天,你是项目经理,你会用OOD吗?

我在作设计时
如果 用流程图能画的清楚的东西
坚决 不会用面向对象,
也就是大家常见的 1Action + 1Service + 1DAO
一个流程图干七八个动作.很easy


这些年来
时序图只有作一个 openid 的模块画过

状态图最近team画手机的复杂界面时才少少使用一下.

架构设计的越好
使用的图越简单
0 请登录后投票
论坛首页 Java企业应用版

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