荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: tang (独孤九剑〖玄铁重剑〗), 信区: Program
标  题: Re: 什么是对象
发信站: BBS 荔园晨风站 (Sun Feb 13 20:58:16 2000), 转信

玩编程到一定程度,最好去看看那些理论,会有新的体会的!

我的理解OOP更应该是一种方法,而并非具体的编码,是如何
用这种方法去更好地去把握去分析的编程对象。我就看过用
汇编实现OOP编程思想的例子!

最近我在恶补UNIX,在UNIX的教科书中发现面向对象用来描
述新的操作系统时,OOP可以很完美地描述并发和通信,而
OOP真能起到作用还是要在并发和分布式的环境中,出于
这种用途我个人觉得C++、JAVA还需要大的改进,以使得语言
本身支持并发的描述,由编译程序生成支持并发的代码,不用
程序员过多地纠缠于各种并发之中!
(这理解可能不准确,我需要更多的时间和资料去理解相关的东西)

而关于各种语言的好坏,最近看UNIX感觉,C之所以成功并不
是语言本身,而是因为先有UNIX后有C,C是为描述UNIX而设
计的,C跟UNIX的语义差距几乎没有!所以象PASCAL这类先有
理论再有语言的东西,虽然在概念上很清晰,但始终与实际的
机器和实现存在不同程度的语义差距,就是C在描述Windows时
总有些地方很怪(如早期的OLE)!

各位怎么看?
【 在 playboy (壮志凌云) 的大作中提到: 】
: 什么是对象?是书上就有对象的概念,但关键是
: 你对对象这个概念理解有多少?对象这个概念我很早
: 就有所接触,但一直被一句关于'对象内的数据不能被
: 外界所改变'所困惑,我一直在想,有什么东西不能被
: Debug或Softice改掉呢,真奇怪!后来,玩了一年Delphi
: 后,我才对对象有了更加深刻的理解。对象中那句'对象
: 内的数据不能被外界所改变'的本义,是指,对象没有给
: 外界留下直接操纵对象内部数据的机会,也没有为外界提
: 供这一便利的方法,对象内部的东西,可以是私有的,外
: 界若想控制对象内部的数据,必需通过向对象发消息来申
: 请之,而不是疯狂地去改变它。
: 对象我们每时每刻都在接触,比如C&C中的坦克,MUD中的
: 人物和物品,风云中的步惊云,帝国时代是的大象,诸如
: 此类的,都是对象!对象本身就是"一小堆有行为的数据"
: 大家想想我刚举的几个例子就会明白这种"有行为的数据"
: 是什么意思了。(刚才的您不会一个也没见过吧,如果真
: 的是这样,我建议您先找几个游戏玩玩,这样也能对OOP理解得更好。)
: 支持面向对象的编程Delphi并不是第一家,在此之前,
: VB/VC/C++都是面向对象的支持者,只不过是在我眼中看
: 来,Delphi对面向对象的支持更高明一些。或者说,
: Delphi对面向对象的编程支持得太好了,以至于它产生
: 了以下的副作用:
:     Delphi中编程是可视化的,以至于"对象"也可视化
: 了,这样的结果会让初学者对面向对象有一种误解,以
: 为面向对象编程都是这个样子,而且有这种思想倾向的
: 朋友在进一步抽向面向对象的函意时会遇到一些困难。
: {这一点VB和Delphi倒是很象,不过在Delphi中内建的Object
:     Pascal 倒是很高雅的一种语言(我个人认为)}。


--
海到天边天作岸
山登绝顶我为峰

※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.63.252]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店