📄
字号:
摘要 本文介绍了Delphi3的功能,并就当今技术发展的趋势对这些技术进行了论述。
关键词 Delphi,面向对象,分布式计算,Web,数据库访问
Delphi3作为Borland公司采用多联器(multitier)新技术的一种先进开发工具,不久将全面上市。
Delphi3具有微软VisualC++5和VisualBasic5的许多突出的功能,但它并不属于可视化工具套件,它是独立的开发环境,这一点是Borland公司基于编程的方便和提高可执行速度而考虑的。
Delphi为开发人员提供了代码智能化和函数参数提示(prompting)的功能。由于对象型Pascal语言强大的数据类型和面向对象的设计思想,Delphi3为开发者提供了更广的功态支持。这种支持要比VisualBasic中能力有限的IntelliSense强得多。
Borland的对象型Pascal和Delphi3的构件型设计,把开发者领上Java之路,保持了高速和紧凑的性能,增强了它与Symantec公司VisualCafe和其他具有Multitier数据访问结构的Java-Beans类工具的竞争力。
Delphi3生成的可执行代码,运行速度要比VisualBasic5的本机化编译器快3-6倍,可达到最快C++编译器的70%。Delphi3不仅快,而且它作为取代VB的Pascal类语言,与VC++5一样可以为建立小而快的COM(构件对象模型)构件和ActiveX控件提供COM类,实现VC++5的自动引用计算发送COM构件的能力。另外,它还对最小的ActiveX控件窗口或大量的运行库提供完全支持,无须增加额外的格式(Forms),这是Delphi秉承了C++的特点。
得到快速高效的构件固然不错,不过,使用已经设计好的代码和构件可以大大提高编程效率。Delphi作为业务决策支持工具,含有大量的可视化数据和分析工具。这些工具实现了动画的图表说明和灵活的旋转(Pivot)表交互访问。这些都给人留下了深刻的印象。
Delphi为微软Windows开发者提供了完整的解决方案。Delphi3新增了许多强大的功能。Delphi3沿用了Delphi2的32位本机化代码编译器,可直接生成可执行代码。对于那些16位应用程序来说,由于涉及低级的16位数据类型或Windows各版本自身存在差异,因此所要做的就是将16位应用程序转换为32位的。
然而,速度并不是Delphi的最终目标。现今的瘦型技术将成为明天的应用。在可执行的前提下,应用程序正朝着瘦型化的客户机方向发展。着眼于这一趋势,Delphi对其编译技术进行了重大完善,提出所谓“包”技术思想。“包”技术允许开发者在编译EXE文件时,可将其从附带的DLL文件分离开来,生成小的客户机应用程序。本机化编译的DLL文件和EXE文件可算作各种各式的包。
Delphi与VisualBasic比较
Delphi3仍然沿袭了许多VB类界面,使得用户可以用各种基础控件创建新的控件。不过,Delphi和VB在采用方法上略有不同。VB是根据对象的组成部分对已有的控件进行扩展,而Delphi的VCL却可以让用户在继承已有控件属性的基础上创建新控件。但是,不论Delphi和VB的实现方法如何不同,它们的目标则是相同的,即重用已有的功能。Delphi3在界面接口方面与Delphi2很相似,这为开发者轻松过渡到新环境提供了捷径。不过,Delphi3还新增了许多工具。每个对象都有一个单独的信息窗口(对象检测器ObjectInspector),其中包含有对象的各相关属性和事件。另外,还有一个窗口(代码编辑器)用于编辑应用程序的代码。双击某一特定的对象则会进入到代码编辑器中,处理该对象的相应过程部。
面向对象式
Delphi3是以对象式Pascal作为其程序设计语言的,它具有面向对象式语言的主要属性,如封装、多态和继承性。这里可用一个例子来说明:在开始进入Delphi时,Delphi会新创一个Form(或窗口),这个Form(或窗口)正是自动从已有的基类Form对象那里继承而来的。
Delphi3还提供了一些先进的面向对象式技术,如覆盖某个父辈对象中的某一特定方法,甚至可以创建自己的基类对象。有关这些更具挑战性过程的说明,构件编写指南(Delphi手册之一)作了详尽描述。实现这些改变要求对面向对象具有相当高的理解程度,同时还要求具备很深的对象式Pascal专业知识。Delphi装备有可视化构件库(VCL32),它内含有100多个可重用的构件。在创建应用时,开发人员可用拖拉式方法对这些构件加以运用。在这些构件中,有95个是属于Windows界面接口,如树形视图(TreeViews)、列表视图(ListViews)以及数据型构件和多媒体工具。
还记得前面所提到的包吗?用户所有的面向对象式程序设计技术也可运用于不同编译包之间。例如,一个EXE包中的对象,可以继承一个DLL包中的对象,而且这个DLL包中的对象反过来还可以继承其他DLL包中的对象。因此,只要所有包在运行时都可以得到,那么这些各种各样的面向对象式功能就能实现。
支持ActiveX
正当业界为ActiveX和Java构件的使用而无所适从时,Delphi3作为微软ActiveX阵营中的一员,把OCX和Ac
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -