为什么说分布式架构限制了OO?

09-05-12 spikeme
为什么说分布式架构限制了OO?

在看书时,有个作者提到:分布式架构强制在每次交互时都使用传输对象,因此限制了OO,谁能具体解释下。谢谢。

beepbug
2009-05-13 07:34
同问。

我也不明白,为什么有人会说“分布式架构限制了OO,”,可看分布式资料,说的不都是OO嘛?

banq
2009-05-13 08:32
>分布式架构强制在每次交互时都使用传输对象,因此限制了OO

这是放屁的话,这本书作者不懂OO,你要挑好书看如Evans DDD

ACoder
2009-05-13 10:57
不知道楼主看的什么书,估计是断章取义了。最好把前后段落都放到论坛上大家看看。

spikeme
2009-05-13 13:07
其实我不是一本书上看到这么说的。

因为我觉得这本书是我所见到的JAVA设计图书中最好的,所以,我才认真仔细的读,这本书的名字是

J2EE DEVELOPMENT WITHOUT EJB.

我没有断章取义,大家难道以前没有听过这说法吗?

spikeme
2009-05-13 13:09
大家不相信我,我晚上把整段放上来吧。

我的语文水平还是很自信的。呵呵。

xmuzyu
2009-05-13 14:19
难道是指EJB2.X架构中的ejb facade返回的DTO对象,但是目前EJB3.0,完全可以返回业务对象由表现层使用。

spikeme
2009-05-14 20:29
我看了下书,原文就这么写的,上下文就是比较多种技术(远程EJB,本地EJB,不使用EJB方案,.net组件)等在OO,生产效率,扩展性等方面的特性时,对远程EJB技术的OO特征,这样描述的。

xmuzyu
2009-05-14 21:11
音乐博士的without ejb是针对EJB2.X说的,所以里面的有些结论对EJB3.0是不成立的。EJB2.X中,每次EJB FACADE都返回很多的DTO,而不能直接返回脱管的业务对象给表现层使用,这就造成了DTO满天飞(DTO也是以前的VO).而目前EJB3.0完全可以采用OO的方式进行。

bloodrate
2009-05-15 09:24
按照Martin Fowler所表达的意思,分布式必然涉及远程通讯,而远程通讯接口应该是粗粒度的;然而面向对象是主张细粒度接口的,这导致二者天然的不匹配.所以在通讯过程中发送和接收端都需要一个代理来维护细粒度接口和粗粒度接口之间映射,保证远程对象在没有分布环境的情况下也能独立运行,而这个proxy则是过程式的.

猜你喜欢