delphi 控件的拿来主义(一)
2002-01-06 14:48
176 查看
"一个优秀的Delphi程序员,不仅要会使用控件,还要会写控件."(向玉笛书生致敬)
我还是一个半瓢水的程序员,因此目前为止我所能努力达到的境界是:
一个半瓢水的程序员,管他会不会写控件,只要能拿来改就可以了.
使用过Delphi的朋友都知道,我们在设计Delphi应用程序的某一功能时总是希望能够有现成的第三方免费控件可以拿来使用.但实际情况往往是,网上的控件确实种类繁多,优秀作品也数不胜数,但真正完全能够符合设计者具体要求的控件却很少.究其原因,不外乎以下几条
1.国人开发的应用程序大多具有中国特色,而优秀的第三方控件往往是国外程序开发人员开发的(大名鼎鼎的Rxlib,知道吧,俄罗斯人的作品).功能定义上的差别导致了控件的不可用性,看看QuickReport就知道了(当然,QuickReport编的也很烂).
2.真正优秀的第三方控件总是从大局上把握控件所能达到的功能,细节问题考虑的不多.而我们设计的程序通常要考虑到很多操作细节上的问题(一般是客户的要求,有时会有些变态)
3.对于许多很有特色的控件,我们所需要的只是其中一部分功能,但是它被整合到了某一个大的方法中,无法为我们所用.
4.优秀和免费总是两个矛盾,天下没有免费的午餐.
种种原因,限制了开发者对控件资源的充分利用.其实,很多控件的代码都提供了开放的接口.只要大家对控件的原理有一定的了解,然后对别人的控件代码作一捏捏的修改,就可以无缝的添加自己需要的功能,或剔除冗余的功能.既达到了开发的目的,又避免了重写代码的麻烦,一举两得(好像很不负责任啊,没办法了,半瓢水嘛).关于控件的原理,应该有很多文章介绍过了,在这里我想通过一个具体的实例来介绍一下怎样将别人的控件"拿来"为我所用.
我还是一个半瓢水的程序员,因此目前为止我所能努力达到的境界是:
一个半瓢水的程序员,管他会不会写控件,只要能拿来改就可以了.
使用过Delphi的朋友都知道,我们在设计Delphi应用程序的某一功能时总是希望能够有现成的第三方免费控件可以拿来使用.但实际情况往往是,网上的控件确实种类繁多,优秀作品也数不胜数,但真正完全能够符合设计者具体要求的控件却很少.究其原因,不外乎以下几条
1.国人开发的应用程序大多具有中国特色,而优秀的第三方控件往往是国外程序开发人员开发的(大名鼎鼎的Rxlib,知道吧,俄罗斯人的作品).功能定义上的差别导致了控件的不可用性,看看QuickReport就知道了(当然,QuickReport编的也很烂).
2.真正优秀的第三方控件总是从大局上把握控件所能达到的功能,细节问题考虑的不多.而我们设计的程序通常要考虑到很多操作细节上的问题(一般是客户的要求,有时会有些变态)
3.对于许多很有特色的控件,我们所需要的只是其中一部分功能,但是它被整合到了某一个大的方法中,无法为我们所用.
4.优秀和免费总是两个矛盾,天下没有免费的午餐.
种种原因,限制了开发者对控件资源的充分利用.其实,很多控件的代码都提供了开放的接口.只要大家对控件的原理有一定的了解,然后对别人的控件代码作一捏捏的修改,就可以无缝的添加自己需要的功能,或剔除冗余的功能.既达到了开发的目的,又避免了重写代码的麻烦,一举两得(好像很不负责任啊,没办法了,半瓢水嘛).关于控件的原理,应该有很多文章介绍过了,在这里我想通过一个具体的实例来介绍一下怎样将别人的控件"拿来"为我所用.
相关文章推荐
- Delphi控件的“拿来主义”
- Delphi控件的拿来主义(二)
- Delphi控件的拿来主义(三)
- Delphi控件开发浅入深出(二)
- delphi控件的停靠
- Delphi皮肤控件分析与QQ的皮肤变色功能
- 记忆Delphi窗体上控件的位置和大小
- 在Delphi中,TabSheet控件在哪里?
- DELPHI中如何开发包含 BLOB 属性的控件
- Delphi控件-复合控件
- Windows版的SFTP服务器:Bitvise SSH Server (WinSSHD)(当然别忘了还有Delphi控件可以自制服务器)
- 手动升级Delphi控件时,修改inc文件的办法
- 做个基类使用,主要功能是子类的用户输入控件可以自动变色---Delphi
- 在Python脚本中使用Delphi控件
- Delphi中用ADO控件连接数据库例子
- Delphi XE7 FMX Android输入控件自适应虚拟键盘的位置
- Delphi中基本控件之SaveDialog控件的使用总结
- [DELPHI] D2009控件的安装
- 问题-Delphi在多线程中使用其他窗体上的控件,报“尚未调用CoInitialize”解决方法
- DELPHI中访问WEBBROWSER控件中的HTML元素