`
canonical
  • 浏览: 368233 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[导入]我看OO的哲学

阅读更多

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引理。
分享到:
评论
5 楼 canonical 2009-03-07  
Witrix技术的核心正在于将模型抽象能力提供给开发者
4 楼 uda1341 2009-03-06  
OO的实现太原始粗糙了。哪怕是概念性的SMALLTALK。基本上是一种封装模块并可做某些修改的语法糖。

但是OO思想的几个精华的确是很好的,只不过OO的具体实现糟蹋了这样的思想。

OO中的继承只是针对某个类的,而实际上继承这个操作应该可以对程序代码中的每个关键词应用。继承if结构是什么意思?难道说没有意义吗?继承一种继承关系本身,同样也是有意义的。继承一个类型,就可以得到一个子类型。smalltalk中号称把一切当作对象,虽然比C++的能力要强很多,但却还是有很大的局限。

OO中的多态,含义很窄,但实际上,在语言中使用的各种名词天生就具有多态的能力,高射炮打蚊子,铁匠打铁。这个打的动作名字本来就是多态的。于是多态本来就是语言本身的能力,只不过被编译器封闭起来了,不让程序员接触到。
3 楼 canonical 2007-01-14  
这里的说法确实是不准确的,在构造超实数系或者泛函的时候才需要选择公理。我所要说明的是数学上的一些存在仍然是需要某种关于存在性的公理的,无论它是选择公理,抑或是其他。
2 楼 dipplum 2007-01-09  
补充:在wikipedia上找到

http://en.wikipedia.org/wiki/0.999...,Reference的第二条提到“Apostol在实分析中利用Least upper bound axiom证明无穷分数的性质”。

而在
http://en.wikipedia.org/wiki/Least_upper_bound_axiom,提到Least upper bound axiom是公理化集合论ZF的定理,并没有提到是ZFC(ZF+AC选择公理)的定理,也就是说Least upper bound axiom在公理化集合论中不需要选择公理即可证明,即0.99...=1的证明不依赖选择公理

选择公理的等价形式Zorn引理的表述中虽然提到了upper bound,但是与Least upper bound axiom是完全不同的命题,且没有互为充分或必要条件的关系(否则很容易据此证明AC和ZF不是独立的)
1 楼 dipplum 2007-01-09  
抱歉, 问个问题, AC等价于Zorn Lemma这个表述没问题
但是1.9999...极限是2,或者说1.99999 = 2为什么是公理?
AC蕴含这个命题还是AC等价与这个命题

相关推荐

    OO真经—关于面向对象的哲学体系及科学体系的探讨

    面向对象(Object-Oriented,简称OO)是一种广泛应用于软件工程和编程领域的哲学体系与科学体系,它改变了软件设计和实现的方式,强调以对象为核心,将数据和操作数据的方法封装在一起,通过对象之间的消息传递来...

    OOALV常用功能完整简例

    标题中提及的“OOALV常用功能完整简例”,描述中说明了该简例包含的内容:热键单击、双击、帮助、编辑和自定义工具条等。OOALV是指面向对象的ALV,它是在SAP系统中常用的报表输出组件,用于将数据以表格形式展示。在...

    ABAP OOALV学习文档

    ### ABAP OOALV 学习文档详析 #### 一、ABAP OOALV 概述 **ABAP OOALV**(Object-Oriented Application List Viewer)是一种用于SAP系统的高级列表显示技术,主要用于生成复杂的报表和列表视图。自R/3 4.6C版本起...

    OO真经——面向对象的哲学体系以及科学体系的探讨

    数据和逻辑不是分离的,而是相互依存的。相关的数据和逻辑形成个体,这些个体叫做对象(Object),世界就是由一个个对象组成的。对象具有相对独立性,对外提供一定的服务。所谓世界的演进,是在某个“初始作用力”...

    OO4O简介以及其在VC++中的应用

    1. **导入头文件**:在项目中包含必要的OO4O头文件。 2. **创建会话**:使用`Oo4oSession`类创建一个新的会话对象。 3. **准备SQL命令**:通过`Oo4oCommand`对象设置SQL语句。 4. **执行命令**:调用`execute`方法...

    实战OO 用例 建模

    实战OO_用例建模 实战OO_用例建模 实战OO_用例建模

    ABAP OOALV报表开发

    ABAP OOALV报表开发,定义变量,选择屏幕定义,创建类,调用函数

    oo2core_6_win64

     1、Windows 95/98/Me系统,将oo2core_6_win64.dll复制到C:\Windows\System目录下。  2、Windows NT/2000系统,将oo2core_6_win64.dll复制到C:\WINNT\System32目录下。 3、Windows XP/WIN7/win10系统(64位系统对应...

    SAP ABAP开发学习——第10课:OOALV(视频教程)

    在本课程中,我们将深入探讨SAP ABAP的面向对象技术在ALV(ABAP List Viewer)中的应用,这是SAP ABAP开发学习的第10课,专注于OOALV。这个主题对于任何想要在SAP系统中进行高效数据展现和处理的开发者来说都是至关...

    SAP OO ALV技术介绍.pdf

    SAP OO ALV技术介绍 SAP OO ALV技术是SAP系统中的一种报表控件类,通过调用cl_gui_alv_grid类的方法可以实现ALV报表的显示。OO ALV技术可以满足大多数ALV需求,但有时需要与后续的屏幕开发等集中在一个屏幕中,或者...

    ABAP OO的八个理由

    【ABAP OO的八大理由详解】 1. 数据封装与稳定性:ABAP面向对象(OO)编程的核心优势之一是数据封装,它将数据和操作数据的方法捆绑在一起,形成对象。这提高了程序的可维护性和稳定性,因为对象内部状态的改变对...

    OO真经--关于面向对象的哲学体系及科学体系的探讨

    OO 真经——关亍面向对象的哲学体系及科学体系的探讨

    实战OO的pdf自留备份

    《实战OO》是一本深入探讨面向对象(Object-Oriented, OO)编程技术的书籍,主要针对软件开发人员,特别是那些关注于软件设计流程和优化的开发者。此书的PDF版本是作者或读者为了个人学习和参考而留存的备份,包含了...

    oracle oo4o安装包part1

    oracle oo4o 817安装包oracle oo4o 817安装包oracle oo4o 817安装包

    SAP OO ALV技术介绍.pptx

    SAP OO ALV技术介绍 SAP OO ALV技术是SAP系统中的一种报表控件类,通过调用cl_gui_alv_grid类的方法set_table_for_first_display可以实现ALV报表的显示。OO ALV技术相比于标准函数REUSE_ALV_GRID_DISPLAY和REUSE_...

    需求分析_OO分析

    PPT,需求分析,OO分析前言,PPT,需求分析,OO分析前言,

    OO4O(Oracle Objects for OLE C++ Class Library)

    Oracle Objects for OLE (OO4O) is a product designed to allow easy access to data stored in Oracle databases using any programming or scripting language that supports the Microsoft ...

    面向对象需求分析(OO RES)

    面向对象需求分析(OO RES) 面向对象需求分析(Object-Oriented Requirements Engineering,OO RES)是一种基于面向对象技术的需求分析方法。该方法将需求分析过程分为三个主要阶段:问题域分析、需求定义和系统...

    [SAP ABAP开发技术总结]ALV详解(Fuction ALV 和OO ALV)

    [SAP ABAP开发技术总结]ALV详解(Fuction ALV 和OO ALV) 图文并茂,详细介绍了Fuction ALV 和OO ALV的相关开发 [SAP ABAP开发技术总结]ALV详解:Function ALV(一) [SAP ABAP开发技术总结]ALV详解:Function ALV...

Global site tag (gtag.js) - Google Analytics