Posted on 2006-01-23 23:11
canonical 阅读(828)
评论(0) 编辑 收藏 所属分类:
设计理论
http://spaces.msn.com/members/zbw25/Blog/cns!1pA6-3FOo9yNp_4lmEHxdDqA!248.entry
物理和数学的新分支的产生多半有着哲理性的开端,而软件中OO技术的兴起想必也是有一定的哲学基础的。但哲学是一种整体的,超越的认识,当我们在实际的应
用中走得越远,就会发现现实的操作距离哲学的理想越远。早期面向对象总是鼓吹对现实世界的直接表达,鼓吹Object,Class的本体论含义。但现在我
们已经可以清楚的感觉到面向对象的哲学隐喻存在着本质上的困难,而软件希望作为真实世界的翻版也必然面临着建模的本质性问题,即任何一个单一的模型与事实
相比总是简化的,贫瘠的。通过无限多自恰的模型构成的概念包络,再加上无法用技术手段表达的哲学升华,我们才达到了所谓不随人的意志转移的客观世界。软件
只能是客观世界的一部分,而不可能是客观世界的镜像。
OO技术已经得到了深刻的发展与应用,实际上现在可以不再总是需要一件哲学的外衣了。我一直强调继承(inheritance)是一种推理技术,而接口
(interface)是一种正交分解技术, 希望抛开OO的诠释而从数学上为OO技术找到根基。
无论是推理还是正交分解,我们都可以在数学上严格的证明它们的好处,
因此OO必然是一种好的技术。至于它对现实世界的表达能力,那是另外一个独立的问题。我的这种思想深受测度论(measure
theory)的影响。测度论中对于概率的定义是纯粹数学化,满足一定条件的数学量就定义为概率。
至于它是否对应于我们日常思维中的概率概念,那是使用者的责任,那是物理学所面临的问题。只有通过这种公理化的定义,测度论才摆脱了概念完备性与自恰性的
问题,才摆脱了哲学上的循环论证。当然,诠释问题在物理学中仍然是一个非常严重的问题,
例如对于量子力学的Copenhagen诠释的争论从未间断过,只是对于数学层面上的操作过程一般还能保持共识。当然,说的深入一些,即使数学上的定义也
未必是逻辑上必然的。为什么实数轴是完备的,为什么1.999999999...的极限是2, 这实际上是一个公理: 选择公理(axiom of
Choice), 等价于Zorn引理。