请教关于OO与数据冗余的问题

为了提高查询效率,在许多地方不可避免的采用冗余字段,从而对一个对象的更新,不得不对所有其冗余字段的对象相应属性进行更新,而这样的逻辑是放在dao层面才完成还是放在bo层来做?
说他是业务问题实在又说不过去,所以倾向于在dao来完成.
对于这种情况 有什么设计上的建议?


还有
昨天有人对我说:我们这里的业务太复杂了,OO解决不了,一个查询连10几张表,那怎么做....
不知道大家怎么看..囧

后一个问题,如果单纯查询,做db_view,当成只读领域模型。不知您以为如何?

这可归结于对象状态的更新问题。按照Evans DDD,应该在Repository层完成。

freebox:
我也是这么想的

不过一句oo不能解决复杂问题把我说傻了

我想XX........
[该贴被binz于2008-06-05 13:21修改过]

banq大哥
我对ddd不怎么了解
对于Repository层 是怎么玩呢?
这些对象更新的东西是写在dao里么?

我怎么觉得OO就是为解决复杂问题而创造出来的?
或者说是被发现于计算机领域了。因为明明一个人或团体或机器就是一个Object。
自然直接的手段不好么?是关系把问题弄复杂了,还是OO把问题弄复杂了?
可能我比较幸运一开始就接触OO,用hibernate也是从写程序就开始了,所以一直分不清Repository和dao是什么区别,我只知道能够在内存里拿到自己的对象就好了。

freebox说得很好,因为有关系数据库的羁绊,所以才有那么多无事生非,如果开始就接触OO,一切就很自然很简单,就和我们生活一样。

这里也反映两种不同思维的干扰,就象中医和西医,本身就是两种不同哲学思维的结果,中医讲究五行合一;西医是西方细分严谨哲学的结果,为什么有人总是要废除中医,说这话的大都是受西方哲学影响的人,比如那个留学回来的方舟子,两种思维的干扰就经常让对一种思维的运行产生干扰和怀疑。

回归本题:
>对于Repository层 是怎么玩呢
只能学习DDD, 搞OO编程,不知道DDD,好像很难玩转,具体案例可参考JiveJdon3