vcl应用 delphi以vcl的强大优势赢得了垂青。我想问的是,vcl在实际应用中,能够应用到什么程度,如如何与面向对象进行结合开发等?有答者皆有分相送,旨在促进交流,共进步! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Borland是最早开发面向对象编译器的公司之一,而且公认做的最好,如DOS下的Borland C++ 3.1,Pascal 7.0等。Borland在Windows环境下的C++陷入困境后,靠以VCL为核心的Delphi重新领导了面向对象程序开发新潮流,VCL之所以强大,很重要的原因就是面向对象的开发,只要你真正掌握了VCL的精髓,几乎可以说,你想应用到什么程度就到什么程度。至于如何开发,不就是继承、重载、封装。 呵呵,vcl本身就是利用oo思想的最好的例子 VCL做了这么多封装为了什么,不就是为了让你更好的进行过程式编码吗? 使用VCL进行面向对象的开发,其实也就是利用面向对象的方法来开发VCL;这是本质!复杂一点说,就是利用面向对象的方法开发的VCL组件来完成若干具体的功能,实现一个完整的工程项目。具体来说,话就长了,必须一点一点的积累,就像学英语一样,是一个长期的过程;首先应该学会使用,也就是要掌握通常所说的技巧;然后就是真正的开发工作,进行基本的VCL开发等等。 上面说得都是正面的,我也提一些反面的:VCL的确是基于面向对象的,但实际上它对面向对象开发的支持并不完善,或者说,我们可能很难建立一套基于VCL的完全是面向对象的系统!但也要注意:这正是它的优点!因为它是面向完全开放环境的,所以VCL要做的不是让你完全地以面向对象的方式去继承、重载、封装它,而是让你可以更直接地在任何环境中有效地使用它,因此,我认为它实际上更象是面向框架的!(注意:"框架"比"类"的可重用性要高得多!)当然,这并不意味着你不能用它去做面向对象的系统,它依然能很好地被面向对象系统所引用,只是你会发现,实际上你有不少时间是在使用面向过程的手段.我觉得这才是DELPHI的真正意图--'面向对象'是'面向过程'的有效扩展,而不是取代!具体的运用,你可以先学一下UML,然后针对DELPHI进行一些变更,实际使用可能比书上说得要复杂一些(就是对VCL的引用问题,有时是面向对象的,有时则不是)下面有我提的一个有关这方面的问题,但回答的人很少:http://expert.csdn.net/Expert/topic/1794/1794284.xml?temp=.4448358(以上是我个人见解,因为对Delphi了解不是很深,所以可能分析得有错误,请谅解) 现对我的问题提出一个应用,更好的探论vcl的应用: 如人事管理中的员工信息管理,在面向过程开发方式直接体现为员工的增加、修改、删除、查询、打印、比例分析等操作,其在后台为对一表的操作。 我的疑问是:如我把员工信息包装为一类,每个员工信息应为一实例,问题是我能否用vcl按面向对象进行包装,以及如何实现类与类(如与考勤、工资、培训等)的关联呢?如不能应如何进行开发呢? VCL是控件(是类的集合,一个功能整体),不一定是一个简单的类,一般情况下它不会被继承,只是被使用.你说得问题和我提得有点象,你可以去看一下:http://expert.csdn.net/Expert/topic/1794/1794284.xml?temp=.4448358如果你认为"每个员工信息对应一实例"可行的话(那就请回答我的问题吧),关联完全可以: +------------------+ | |[公司]----+ +--[财务管理]--+ | | | | |[培训]---[员工]---[工资]--[考勤] | | +---------------+上面都是类,我个人认为,VCL中的TQuery是用来生成员工、工资等的工具,也就是"公司"、"财务管理"类中的一个属性(由公司的TQuery控件来Add,Del员工,财务也一样)我对账务系统不了解,可能有错,但实现肯定是可以的,问题是这样对你的内存资源会有多大的要求,你想过吗? 能够应用到什么程度, ^^^^^^^^^^^^^^^^不懂你什么意思!如何与面向对象进行结合开发等?VCL本来就是基于面向对象的技术,但delphi并不像java等一样是完全面向对象的语言,我觉得正是这样,才会使delphi的vcl体制“老少程序员皆宜”--------------------------------------看见了么,那支蛾子,正飞向太阳,那就是我!-------------------------------------- 能和 visual c++ MFC 相提并论的只有 delphi 的 vcl,vcl 不是纯面向对象的,MFC 也不是,而正是不是纯面向对的,才给 VCL 提供了活力,只要能掌握 VCL 的精髓就没有你干不了的,它把一些相对复杂的东西封装起来, 我们只要利用面象对象的思想去利用它, 就会觉的一切都是相对容易掌握。 启动和关闭时间的设置 P2P系统怎么找到对方IP d7中modelmaker在哪?菜单中没有吗??? 谁能介绍listview的常用属性和方法的用法? ADO连接oracle 数据 在线等,在DBGRID里几个字段值相加减计算! Delphi 中用 showmessage 怎么让对话框中的 OK 按钮变为中文呢? 文件操作问题? 请教一个有关StringGrid的打印问题? 请问各位,delphi中formcreate和formshow有什么区别?(50分) $$$怎么实现报表横向打印?$$$ 系统退出
复杂一点说,就是利用面向对象的方法开发的VCL组件来完成若干具体的功能,实现一个完整的工程项目。
具体来说,话就长了,必须一点一点的积累,就像学英语一样,是一个长期的过程;
首先应该学会使用,也就是要掌握通常所说的技巧;然后就是真正的开发工作,进行基本的VCL开发等等。
当然,这并不意味着你不能用它去做面向对象的系统,它依然能很好地被面向对象系统所引用,只是你会发现,实际上你有不少时间是在使用面向过程的手段.我觉得这才是DELPHI的真正意图--'面向对象'是'面向过程'的有效扩展,而不是取代!具体的运用,你可以先学一下UML,然后针对DELPHI进行一些变更,实际使用可能比书上说得要复杂一些(就是对VCL的引用问题,有时是面向对象的,有时则不是)下面有我提的一个有关这方面的问题,但回答的人很少:
http://expert.csdn.net/Expert/topic/1794/1794284.xml?temp=.4448358(以上是我个人见解,因为对Delphi了解不是很深,所以可能分析得有错误,请谅解)
如人事管理中的员工信息管理,在面向过程开发方式直接体现为员工的增加、修改、删除、查询、打印、比例分析等操作,其在后台为对一表的操作。
我的疑问是:如我把员工信息包装为一类,每个员工信息应为一实例,问题是我能否用vcl按面向对象进行包装,以及如何实现类与类(如与考勤、工资、培训等)的关联呢?如不能应如何进行开发呢?
http://expert.csdn.net/Expert/topic/1794/1794284.xml?temp=.4448358如果你认为"每个员工信息对应一实例"可行的话(那就请回答我的问题吧),关联完全可以:
+------------------+
| |
[公司]----+ +--[财务管理]--+
| | | | |
[培训]---[员工]---[工资]--[考勤]
| |
+---------------+
上面都是类,我个人认为,VCL中的TQuery是用来生成员工、工资等的工具,也就是"公司"、"财务管理"类中的一个属性(由公司的TQuery控件来Add,Del员工,财务也一样)我对账务系统不了解,可能有错,但实现肯定是可以的,问题是这样对你的内存资源会有多大的要求,你想过吗?
^^^^^^^^^^^^^^^^不懂你什么意思!如何与面向对象进行结合开发等?
VCL本来就是基于面向对象的技术,但delphi并不像java等一样是完全面向对象的语言,我觉得正是这样,才会使delphi的vcl体制“老少程序员皆宜”--------------------------------------
看见了么,
那支蛾子,
正飞向太阳,
那就是我!
--------------------------------------
vcl 不是纯面向对象的,MFC 也不是,而正是不是纯面向对的,
才给 VCL 提供了活力,只要能掌握 VCL 的精髓就没有你干不了的,
它把一些相对复杂的东西封装起来, 我们只要利用面象对象的思想
去利用它, 就会觉的一切都是相对容易掌握。