教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 论文> 其他论文> 论Delphi开发商品化软件的优点

论Delphi开发商品化软件的优点

上传者:网友
|
翻新时间:2013-12-18

论Delphi开发商品化软件的优点

论Delphi开发商品化软件的优点 论Delphi开发商品化软件的优点 论Delphi开发商品化软件的优点 1995年10月,当我们在考虑选择哪种开发工具来开发新的Windows版本企业管理软件时,有很多意见:VC++ 2.0,BC++ 4.5,VB 4.0,PB 4.0,Foxpro 2.5 for Windows和Delphi C/S。 由于以前我们的全部 DOS和Windows产品全是由Borland C++编写的,彻底感觉过C++编写大型应用软件的优点和缺点---能解决 所有问题但投入代价太高!所以我们决定抛弃C++,另外选择。为郑重起见,我和几个主力开发人员一起测试了其余的开发工具,最后几乎全部决定采用一个很新的工具Delphi 1.0 C/S,当时考虑的因素如下:

1.Delphi是唯一真正的编译语言。由于大型通用软件的速度要求较高,经验和测试表明PB,VB,Foxpro编写的大程序较慢,Delphi的程序开发和运行时都很快。

2.Delphi C/S支持单机的dBase,Paradox数据库和流行的关系数据库,如Oracle,Sybase,MS SQL Server等。这样,最后的系统可以在单机、Netware网络文件共享方式和C/S条件下运行,扩大了企业使用范围。

3.Delphi的Pascal语言是和C++是几乎相同的面向对象语言,非常好,习惯了C++OO 编程的高级C++程序员很容易接受。而且,Borland的Pascal一直非常好。

4.Delphi C/S有全部构件的Source,可以在需要的时候修改和增加构件。

现在,我们完成了一套庞大的产品"天心企业全能管理系统",是一套包含企业的财务管理、仓库管理、销售管理、应收应付帐款管理、报表系统、成本核算、生产管理、商场POS前后台业务处理、工资考勤管理和结合Internet/Intranet的公文管理、报表查询的完整系统。它是32位的应用,运行于英文和简体、繁体Windows 95/NT上,后台支持各种数据库连接,包括NT、

9

5、Netware和Unix环境下的MS SQL Server、Oracle、Sybase、Informix、IBM DB/

2、 Interbase、 Access、 Foxpro等。 系统规模庞大, 14M的源代码由600多个Pascal文件和接近400个DFM文件构成,包含自己开发和购买的40多个Delphi构件以及4个Active X(OCX)构件。

1.几乎完美的面向对象语言和技术。

考虑到系统中有大量的数据录入动作,我们编写了一个构件,叫DBKey,专门解决界面数据和数据库之间的动作。这样,程序员只要考虑用户输入数据的正确性和关系,而不用考虑数据如何存入数据库中和数据浏览、移动时的细节。如果数据进入数据库时的请求出错,构件会自动Rollback还原到录入状态,给出提示,使所有画面的处理动作一致。每个数据录入界面上都使用DBKey,还实现了很多细节的管理动作和打印动作。在输入界面完成后,只要修改和增加DBKey的功能,全部界面都具有了相同功能。比如,我们的表单打印输出就是在全部录入界面完成后,才加入在构件中的,于是全部界面都有了漂亮一致的打印输出功能。

由于每个企业对报表输出的数据要求都可能不一致,我们的报表输出的也采用了一个专用构件,程序员只要将需要的数据提交出来到一个临时数据库中就可以了。以后对数据的小计、合计、排序、增加自定义计算栏位、调整栏位顺序、报表打印样式、字体设计和将数据转出为各种dbf,txt,Word,Excel文件或发电子邮件、传真等功能都统一由构件实现。这样,使用户的使用感觉非常一致;而我们的维护工作也变得非常简单。

Delphi本身提供了一个很好的DBGrid,但我们在实际应用中,发现缺少一个中国人很常用的双层表头功能,比如上层表头为工资,下层为基本工资、加班工资、房屋补贴等。于是,我们继承DBGrid派生了一个新的类,只编写了200多行程序,就实现了此功能。

Delphi的对象技术还帮助我们完成了两个高难度的工作:多语言支持和类似于Windows 95的桌面和菜单管理。我们的软件可以自动和运行期间人工调整显示的语言:大陆的GB码、港台的BIG5码和英文,为外资企业提供了方便。我们的软件由于功能很多,一般用户可能不会全部使用,也有可能希望更改表示功能的桌面和图标,重新根据部门安排和调整工作图标,于是我们又编写了一个构件能将用户重新设计的桌面、菜单保存起来,并对应系统的具体功能。这样,我们的系统就可以根据用户的需求,随意的修改和组合,可复杂也可以简单。这样的功能,用别的RAD工具实现起来就会非常困难。

2.完善的数据处理能力。

Delphi 2.0中,增加了Data Modules的概念,可以将数据包装在一个模块中,在系统启动时或空闲时 将它打开,这样,所有使用这些Table的模块都可以公用它,避免重复打开和关闭。并且,由于所有数据Table位于一个模块中,非常便于管理维护和迁移升级。

BDE的别名机制,使数据库迁移变得非常容易,从Desktop转为Client/Server只要改变和设置好别名就可以了。BDE本身附带有Oracle,Sybase,MS SQLServer,Interbase和dBase,Paradox 的驱动 程序 ,可以直接连接上述数据库,BDE 3.5又增加了Informix和IBM DB2的支持。通过对ODBC的支持, 又可以连接所有提供ODBC驱动的关系数据库。Delphi提供了一个函数,叫ISSQLBased,用于判断当前数据库是否是基于SQL数据库的,为特别的需求提供了判断方法。

Delphi提供了非常方便的工具SQL Explorer,可以快速浏览各种数据库服务器上的资料,如stored procedure等。另外一个工具是SQLMonitor,可以测试和优化SQL查询。还提供了一个数据搬迁工具,可以将数据从一个地点全部或部分搬迁到另外一种数据库中。

BDE中,可以针对不同关系数据库设置大量的相关参数,调节处理性能。更提供了带缓存的更新动作CachedUpdate,大大提高了交易处理能力,这样,可以将多笔资料录入修改放在缓存中,确认后,再一次性的更新数据库。这个功能大大减轻了程序员保存临时数据的负担!

3.对标准技术的完整支持。

Delphi提供了Windows 32位特性的完整支持。用Delphi编写multi-thread多线程的程序非常简单, 系统提供了一个叫Thread Object的物件,只要新建一个Thread Object,然后给出Class Name, 就产生了一个继承TThread的Class,在Execute中添入相关代码,就完成了。我们的系统中就使用了multi-thread来提高系统的执行效率,在空闲时,提前打开相关数据库的Table。

4.大量的第三方构件产品和工具。

在Internet上,有全球大量的Delphi程序员编写的构件和范例程序。最有名的好象是DSP(Delphi Super Page,http://sunsite.icm.edu.pl/~robert/delphi//)和Delphi32(http://www.delphi32.com/)。前者是建立于Sunsite上的,位于波兰,有成千个构件和范例程序是Freeware和Shareware,可以免费或购买使用,几乎各种专题都会涉及。比如,我们早期曾考虑编写MAPI程序,结果去DSP上马上就找到一大堆构件和范例,还有Source,大大加快了开发速度;后来又有一次希望编写TWAIN32的扫描仪接口,结果有一下就有3个构件支持。于是,我们养成一个习惯就是当编写一个特别功能的构件时,先去Internet上找一找,几乎每次都会有收获。

还有大量的公司编写的高水平的Delphi构件,比如Info Power的一组DataControl构件,水平非常高,很实用;大大有名的就是Delphi 2.0附带的QuickReport构件,我们购买了Source,写得非常漂亮,能非常高效方便地处理较小规模的数据,输出报表,刚发表的2.0版本更好,能处理非常复杂和大量的数据,使用更方便。

随着我们产品开发的完成,我们非常庆幸当初选择了Delphi作为开发工具,它几乎全是非常彻底解决了遇到的问题,满足需求非常彻底。当然,还有很多功能没有谈到,

比如,集成的PVCS的版本管理器,Visual Query Builder,打包的安装程序工具InstallShield Express等等,非常方便。我们还试用了刚推出的Borland C++Builder,好象和Delphi是孪生兄弟似的,差别仅是语言分别为C++和Pascal,在Borland C++ Builder中可以直接编译Delphi的代码。如果你还想继续使用C++,那选Borland C++ Builder好啦!

Delphi 3.0或Delphi 97据说即将推出,我们得到的资料说和nternet集成度进一步提高,Form可以变为Active Form,如果真是字面上的意义的话,也许不久我们的产品就可以在Internet上运行了。

下载文档

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

网友最新关注

闪光的足迹,不朽的辉煌
大象
夸妈妈
母爱无私大爱无疆
画风
美丽的森林
春雨
我的妈妈
快乐最重要
夸妈妈
聘书例2
新产品签定会请柬
追悼会仪式治丧名单
碑文的写法格式
李观祭欧阳修母亲的祭文
请柬的概念
史考伯给自己的墓碑文
请柬的写作格式
碑文写作应注意的事项
礼仪文书的种类
追悼陈毅同志的悼词
请柬的写作要求
黄花冈七十二烈士之碑
王洛宾墓碑碑文
人民英雄纪念碑
笛子在民族音乐中的发展与传承
浅谈培养学生音乐学习能力 提高高中音乐教学质量
试论提高学生音乐审美素质与高校音乐公共课的改革
钢琴乐器的历史沿革与钢琴音乐的流派更替
浅议高师《中国民族民间舞蹈》课程教学改革与实践
试论贝多芬音乐作品中人文精神与音乐形式的关系
我国民族音乐和流行音乐的相互关系
试论提高钢琴练习效率的有效方法
试论音乐欣赏中的中国古典音乐教学
探讨新课程下高师音乐课堂的师生交流与互动
浅谈如何上好非音乐专业大学生音乐赏析课
试论现行《音乐课程标准》中的音乐本位意识
浅谈培养歌唱艺术表现力的科学方法
探析消费艺术语境下解读剧场民间歌舞
从音乐人类学角度浅谈音乐文化与音乐教育
《太空生活趣事多》
《清澈的湖水》第一课时教学设计之二
《活化石》
《难忘的一天》
《父亲和鸟》
《父亲和鸟》教学设计之二
《一株紫丁香》
《我要的是葫芦》第二课时
《回声》教学设计
《坐井观天》
《活化石》教学设计之二
《我是什么》教学片段及评析
《浅水洼里的小鱼》
《农业的变化真大》教学设计
《我是什么》