请教:关于面向对象编程(OOP)
根据OOP的理论,即使是应用程序本身也是一个OOP的对象。
是对象就有Method、Data,那么对于一个BCB应用程序而言,
它首先是一个Application对象,然后,其中包括Form1对象,
如果是用户自定义的函数就会加入到Form1对象中,
换言之,这个TForm对象的实例不仅从TForm对象中继承了原有的Method和Data,
而且还增加了一些属于它自己的、特有的Method或Data。
如果我自己定义了一个class,并且将它加入到Form1中,
那么,站在Application或Form1的立场上看,其功能都是可以内部完成的,也就是黑箱操作了。而如果站在自定义的class或其他Form1中所包含的控件的立场上,比如Form1中除了包含一个自定义的class,还包括一个Button1和Edit1,那么他们之间就是不同的class之间的关系了。它们之间如果要传递信息,比如,将Edit1->Text的内容作为数据放入到自定义的class中这样的操作,其操作数据的方法的调用都要受到protect、public等属性的限制。
这样的话,如果我写一个软件,首先想到的是它所要实现的功能,并据此写出伪代码或class的雏形,然后将class的接口函数和必要的GUI界面的接口函数连接。
如此软件就完成了?
不知道,我这样的说法对吗?
还有,如果是SDK的程序要如何实现OOP呢?
是否也和在DOS的OOP相似呢?当然这肯定是加上了对于窗口、消息的创建、显示和管理。
2002-04-01
Jack Lucifer
BTW:虽然今天是愚人节,但是我不会在这儿愚人。愚人者愚己嘛。