Delphi 3——多层C/S的32位快速开发工具
Borland自从推出了Delphi之后,深受程序设计人员的青睐。Delphi的每一个新的版本都给用户提供了更新的功能。例如,Delphi 1.0版本,提供给用户一种全新的可视化的环境, 使用户能快速开发Windows 3.1的应用程序。Delphi 2.0版本除了给使用者提供快速的32位开发环境以外,还增加了如数据模块(Data Module)等多种高效的数据重用功能。现在,Borland郑重地推出了更新的第三代版本Delphi 3——多层C/S的32位快速开发工具。
Delphi 3到底提供了哪些新的技术呢?以下将为大家概述这些新技术的背景和特性,以及Delphi是如何将这些技术实际运用在程序设计中的。
Delphi 3的新技术大致表现在以下三个方面:
·数据库的处理技术
·Web上的Client/Server技术
·数据分析、企业组件和提高程序设计人员的生产力
数据库的处理技术
第一代数据库系统采用单层结构(1-Tier),这种结构很浪费计算机资源。第二代数据库采用了Client/Server结构,也就是所谓的两层结构(2-Tier)。这种结构得到了广泛的应用并获得了极大的成功。但在其结构上也存在一些问题,主要表现在应用程序的伸缩和维护方面。例如,在网络上如何维护数据的统一性和完整性;一旦应用程序有任何改动,维护人员就必须对每个客户端进行修改。
最新一代的数据库系统是在传统的Client/Server结构中增加一个应用服务器,这种新结构叫做n-Tier或Multi-Tier。
Delphi 3针对这种新一代的数据库管理系统观念,提出了三种Broker和新一代的数据库引擎,来适应n-Tier的需求。
第一种叫做Remote Data Broker。其结构的精髓是让每一个客户端不再需要BDE,取而代之的是一个中央化的BDE,以集中管理的方式降低每一个客户在BDE上调整的开销和复杂度 。
第二种叫做Constraint Broker。顾名思义,它所扮演的角色就是保证所有客户数据的一致性及数据的完整性。
第三种是Business Object Broker。它的目的是给一些关键性的商业应用程序提供一个快速且可信赖的使用环境。为了达成这种高层次的要求,Business Object Broker自动地将应用程序做适当的划分,并复制重要的业务规则到每一个区间,以达到速度的要求。
Web上的Client/Server技术
Delphi 3的两项新技术——Web Broker和ActiveForms可以使开发人员结合原有的Client/Server技术开发出Web-Enabled的Client/Server应用程序。
Web Broker
我们先从实际的层面来看,当一个Client/Server结构的数据库程序改成Web-Enabled的时候,首先要考虑的是如何把结果显示在不同的机器上,其次是如何将已经开发出来的程序方便地分发给不同地方的用户。
Delphi 3中Web Broker的目的就是让服务器执行的结果以HTML格式快速地显示在Web浏览器上面。Web Broker中包含了几个重要的核心成分。
WebServer Application:建立ISAPI/NSAPI或CGI的DLL,或者建立执行程序。
WebBridge:让开发人员开发一些可在ISAPI/NSAPI中共用的API,使得程序的开发不会因Netscape或Microsoft的标准改变而受重大的影响。
WebModeules:WebModule所扮演的角色就好像是WebServer的信息中心,它分派每个使用者的要求,定义URI和新建HTML网页。
Sessions:Session可同时处理许多数据库处理的要求,针对每一个用户请求,在中央的BDE中新建不同的BDE区段来应答用户。
WebDispatcher:是一个处理数据库需求的中心,允许Delphi的开发者把传统的Client/Server数据库所产生的内容传送到Web上去。
HTML Producers:主要的目的是将数据库信息或其它程序的结果转换为HTML的格式。
ActiveForm
ActiveForm是开发Web-Enabled的Client/Server应用程序另外一个重要的部分,它针对以Windows为基础的Client/Server结构的数据库系统。
Delphi 3提供了一种最容易的方式,将Delphi的Form转成ActiveForm。ActiveForm是一个ActiveX控件,它用Delphi的Form为载体来装其他Delphi的组件,为了适应网络频宽不足的限制,ActiveForm配合Remote Data Broker可以产生小巧且无须编程的Multi-Tier数据库应用程序。
Delphi 3另一个有力的工具叫Web Deployment,它可以自动地产生HTML文件,传送ActiveForm和其他所必需的文件到客户端。Web Deployment可以支持CAB的文件格式,以增加文件下传的速度。除此之外,它还提供Code Signing机制去提高网络安全性。
Delphi 3还提供了新的编译技术——VCL Package技术,它可以把Delphi的应用程序缩小到15K左右,非常适合网络传输。
什么是VCL Package技术呢?在Delphi 3里这种新编译技术大量运用在新兴的Multi-Tier数据库应用程序上,这种技术让程序开发者轻易地将自己的应用程序拆解成小的程序片段。这可和一般的工具程序不同,因为每一片段都已经被独立编译过了,并且可重复使用,其原有程序的执行效率不会因拆解而降低。
数据分析、企业组件和提高程序设计人员的生产力
Delphi 3另外值得一提的部分是在客户端的开发应用,主要表现在三个方面:数据分析,组件制造中心和减小程序开发的难度。
数据分析
正确的数据分析,在业务决策分析上是相当的重要。当大量的数据放在用户面前时,用户要搞清这些繁杂数据背后的真实意义可不是件容易的事。如何将现有的数据转成有用的信息,来辅助决策者做出最正确的决择呢?一般来说,运用图形及报表形式是最好不过的了,Delphi 3提供了三个重要的组件,Decision Cube,TeeCharts和Quick Report。
Decision Cube让使用者能依据个人需求,动态查询数据,显示多维数据和动态图表,产生不同性质的有用分析结果,充分显示数据背后的相互关系,提供给快策者最快最有用的信息,帮助他作出最正确的决定;TeeCharts是一个三维的可视化图表,使数据更容易被理解;Quick Report是一个超强的报表生成组件群,除了提供一般的报表外,还可以产生HTML的报表格式,让所产生的报表得以在Web上发布。
组件制造中心
企业组件的制作基础是运用ActiveX的技术,配合对COM的支持能力,以一步到位ActiveX的工具,建立企业组件,提供企业内组件的最大重用能力。用Delphi 3制造出来的组件可以运用于各种不同的开发工具中,例如C++Builder、IntraBuilder、VB等。
提高程序设计人员的生产力
在程序开发过程中,语言的语法、组件的方法和事件的名称,或已经声明过的变量、过程的名称往往很难准确地书写。Delphi 3提供了许多辅助方法来解决这些问题,减少程序开发所需时间。在Delphi 3有三个Wizard,分别是Code Template Wizard,Code Completion W izard,Code Parameter Wizard来帮助开发者避免一些在程序开发时不必要的资源和时间浪费。
结 论
由于企业内部和Intranet的需求越来越复杂,应用程序开发越来越困难。程序开发人员迫切需要一种强有力的快速开发工具。Delphi 3大幅度提升Delphi 2的功能,从多层C/S的数据库应用到Web Client/Server结构的应用,甚至对程序设计人员所面临的困难,都细心地考虑并给出了最佳的解决方案。
目前全世界Delphi的用户已经超过60万,用Delphi产生的应用程序在各行各业发挥着重要的作用。
--------------------------------------------------------------------------------