精彩的讨论《数据库时代的终结 》
刚刚在Jdon上看到了这个贴子《数据库时代的终结 》,其中看到了Raimundo大侠的一些精彩思想,特别是对对象模型和关系模型进行了深层次的比较:
“那么OO不具有思维简洁性不具有计算简洁性,他为什么能如此成功?因为它符合冯诺依曼原理,控制流主导,也就是通由对象的行为,指引数据的传递。也就是为什么职责,协作在OO中格外重要的原意。因为他们是刻画控制流的。”
“因此我的论点是,在[b]数据模型上[/b],OO并不占有优势。”
“冯诺依曼原理给我的指导是什么呢?我想大家都有这样一个共识,就是软件结构一定要符合硬件结构。就算把jvm想象成抽象硬件可能这个命题依然成立。既然计算机的硬件结构依从冯诺依曼原理,软件也应该参照。就是软件应该立意于计算,但是计算之前要规划好存储。”
“至于说OO和数据中心那个好,我遗憾的告诉你,以我的经验,系统scale越大,oo在系统结构中的地位就越不重要,oo就越倾向于实现层次,而非架构。你看soa,根本不用考虑你的实现方式。虽然soa本身是oo的延续,但他也是oo主导体系结构的终结。实际上明白这一点,这可以很容易的明白为什么很多oo大师都不推荐分布的实体对象,比如ejb 1.x中的entity bean。就是因为large scale结构中的oo实效。”
....
建议对O/R Mapping、OO、系统架构比较感兴趣的朋友看看。
另外寒自己一个,一直做应用,忽略了软件的理论,看来该补上了。