Delphi
Delphi,是Windows平台下Object Pascal语言集成开发环境,支持应用程序快速开发(Rapid Application Development,简称RAD)。最初版本由美国Borland公司于1995年开发,用于接替DOS时代盛行一时的“Turbo Pascal”。主创者为安德斯·海尔斯伯格。经过数年发展,此产品已转移至Embarcadero Technologies公司旗下。
原作者 | Borland(1995–2008) |
---|---|
开发者 | Embarcadero Technologies(2009–现在) |
当前版本 |
|
编程语言 | Pascal |
操作系统 | Microsoft Windows |
语言 | 英语,法语,德语,日语 |
类型 | 集成开发环境,编译器 |
许可协议 | 专有商业软件(Embarcadero Technologies EULA) |
网站 | www.embarcadero.com/products/delphi |
从产品名称上就可以知道,Turbo Pascal使用的是Pascal语言。从Turbo Pascal 5.5版开始,Borland公司在传统Pascal的基础上加入了面向对象的功能。
Delphi所用语言是由传统Pascal语言发展而来的Object Pascal,以图形用户界面(Graphical User Interface,简称GUI)为开发环境,透过IDE、图形界面库Visual Component Library (VCL)工具与编译器,配合链接数据库的功能,构成一个以面向对象编程为中心的应用程序开发工具。Delphi所编译的可执行档,虽然容量较大,但因为产生的是真正的原生机器代码,性能上比较快速。除了使用数据库的程序之外,不需安装即可执行,在使用上相当方便。
Delphi在本质上为软件开发工具,并非编程语言,但由于Delphi几乎是目前市场上唯一使用Pascal,并持续推出新版本的商业产品。因此,有时人们会把Delphi视为Object Pascal的代名词。Borland公司因而把Object Pascal改称为Delphi。2006年,Borland把开发工具产品线独立出来,成立了一家新的公司CodeGear,并把产品线交由此公司负责。原本的Delphi,亦曾一度因此被命名为Turbo Delphi。但是在新的版本中,除了Delphi for Win32(原有的Delphi版本)之外,还有一个新产品“Delphi for PHP”。在CodeGear的发展规划中,或许“Delphi”不再是Object Pascal的专属IDE名称,而是将之提升到通用IDE品牌的层次。2008年5月7日,Embarcadero Technologies(易博龙)公司宣布以2300万美元的价格收购CodeGear公司,从而把Delphi收入囊中。2009年5月6日,Micro Focus宣布以7500万美元收购Borland。
Delphi目前的最新版本是Delphi 12 Athens。
技术特点
编辑VCL
编辑每一种开发工具,仅有编程语言是不够的,还需要一个完备的函数库/类库。Delphi使用的类库是可视组件类库VCL(Visual Component Library)。同MFC、OWL一样,VCL也是一种开发架构(Framework),采用了面向对象技术对Windows应用程序的开发进行了封装,使用PME(Property/Method/Event)的开发模式,极大的提高了开发效率。
跨平台开发
编辑在Delphi 7之后,开始支持Linux下的Kylix,目前Kylix的最新版本为3。Borland公司为了支持Delphi的跨平台开发,从Delphi 6.0开始加入了另外一个开发架构CLX。开发人员可以使用CLX架构开发出可以在Kylix中编译的程序。但是从Delphi 8开始,其后续版本并不再对CLX提供支持。
- .NET支持
2003年推出的Delphi从8.0,开始正式支持微软公司的.NET平台。Delphi9 或 Delphi 2005,亦将Delphi集成在一个IDE环境中(同时也支持C#)。由于提供了.Net Framework的CLR,因此可用Delphi的代码,编译成和.NET相同的运行码,也可使用.NET的各项类库,使得程序设计上更富有弹性。
跨平台开发(Delphi XE2)
编辑通过Delphi XE2所带的FireMonkey平台,Delphi可以开发跨平台应用程序,并原生编译到Windows和Mac OS X平台。FireMonkey还可以为iPhone、iPod Touch和iPad创建iOS应用,并分发到苹果公司的应用商店。Delphi的FireMonkey应用程序拥有完全的硬件加速。
分布式应用系统
编辑应用程序开发团队的每位成员,不见得会使用同一套开发工具,因此Delphi支持COM/DCOM与CORBA,可供Delphi设计人员使用Visual C++、Visual Basic的ActiveX组件,或使用DCOM、CORBA的功能让Java应用程序取用其共享功能。
版本历史
编辑年份 | 版本 | 特点 |
---|---|---|
1995 | 1.0 | 支持16位Windows,以VCL架构为基础的可视化开发环境。 |
1996 | 2.0 | 以32位编译器为核心,支持主从式(C/S)数据库的应用程序开发。 |
1997 | 3.0 | 语法:加入接口机制。IDE:首次提供Code Insight。 |
1998 | 4.0 | 语法:加入动态数组和方法改写。IDE:增强调试能力,提供模板。 |
1999 | 5.0 | 加强IDE和调试功能,以及对数据库的支持。并提供TeamSource,简化Internet的开发工作。 |
2001 | 6.0 | 支持Web Service,以及跨平台的Kylix 1.0和CLX。 |
2002 | 7.0 | 提供了.NET的过渡,增强的Internet开发(IntraWeb),完善数据库支持,并加入Indy网络组件与Rave Report数据库报表,同时支持UML及XP的程序制作。 |
2003 | 8.0 | 单纯的for .NET版本,可用C#语言进行程序开发工作,并保留了Delphi的易用性(业界视其为一个过渡版本) |
2004 | 9.0 | 正式名称:Delphi 2005。语法:加入了inline及for in loop等功能。IDE:把Borland Delphi.Net、Borland Delphi Win32、Borland C#、Enterprise Core Objects等环境和功能集成为一个开发工具,因此可以在Win32和.NET开发环境中切换或同时进行。 |
2005 | 10.0 | 发布名称:Borland Developer Studio(BDS)2006。集成C++ Builder; ECO(Enterprise Core Objects)升级到ECO III;以及Together for Delphi,可以在同一个IDE中进行UML开发;QA Audits和QA Metrics可以快速把握项目的设计和代码的质量。从此版开始,Delphi正式支持运算符重载。 |
2006 | Turbo | Borland将BDS 2006拆分成几个独立的版本(Delphi for win32、Delphi for .net、C#、C++ Builder),而且不能同时安装两个不同的版本。由于Borland的IDE生产部门,独立成为一家名为CodeGear的公司,所以这个版本是以Borland名义推出的最后一个版本。 |
2007/09 | 11.0 | 正式名称:CodeGear RAD Studio - Delphi 2007。正式对Windows x86的API进行了完善,这个版本亦是最后一个支持VCL.NET的版本。 |
2008/09 | 12.0 | 正式名称:CodeGear RAD Studio - Delphi 2009。正式全面支持统一码。从此版开始,Delphi终于实现了用户期待已久的功能:完整的泛型支持。从此Delphi语法在面向对象领域终于和C++持平。 |
2009/08 | 14.0 | 正式名称:Embarcadero® RAD Studio 2010。代码编辑器加入了自动排版功能,编写出漂亮的源代码格式不再是累人的事情。 |
2010/08 | 15.0 | 正式名称:Embarcadero® RAD Studio XE。首次在IDE里集成了Profile工具,Delphi开发人员终于可以方便地测试自己的代码运行效率了。 |
2011/08 | 16.0 | 正式名称:Embarcadero® RAD Studio XE2。支持编译64位Windows应用程序。支持跨平台,这项技术被称作FireMonkey,支持完全的硬件加速。使用FireMonkey可以创建Windows、Mac和iOS的原生应用程序,能够充分利用CPU和GPU。并且FireMonkey也带来了一个全新的2D/3D UI框架。 |
2012/08 | 17.0 | 正式名称:Embarcadero® RAD Studio XE3。横跨Windows8和APPLE Mac OS-Mountain Lion两平台的最佳开发工具,于2012年9月正式上市,主打符合多平台,并支持最新的Windows 8。 |
2013/04 | 18.0 | 正式名称:Embarcadero® RAD Studio XE4。通过 Delphi iOS ARM 编译器、工具链、全新可视化开发环境,开发iOS 应用。新增 FireDAC,实现功能强大、快速且简单的数据访问。 |
2013/09 | 19.0 | 正式名称:Embarcadero® RAD Studio XE5。可以利用 Delphi 开发 Android 应用、利用C++开发 iOS 应用。REST 客户端支持,以访问基于云端的 RESTful web 服务(在专业版和更高级版本中)。 |
2014/04 | 20.0 | 正式名称:Embarcadero® RAD Studio XE6。全新 VCL 样式,可使用Windows样式的外观。在Windows平板电脑上开发VCL应用,访问设备传感器。用delphi进行的多设备应用不仅包括PC、平板电脑、和智能手机,现在已延伸到可穿戴设备,可以创建运行在Google 眼镜上的Android 应用。除Windows、Mac OS X和iOS外,还可以添加 Android 作为您的应用的目标平台。用单一的C++代码库,创建针对Android 和iOS 的应用。可以把32位应用(包括程序包)完全移植到64位,将组件放入共享的函数库(DLL)。 |
2014/09 | 21.0 | 正式名称 : Embarcadero® RAD Studio XE7。 |
2015/04 | 22.0 | 正式名称 : Embarcadero® RAD Studio XE8。支持iOS 64bit |
2015/08 | 23.0 | 正式名称 : Embarcadero® RAD Studio 10 Seattle。 |
2016/04 | 24.0 | 正式名称 : Embarcadero® RAD Studio 10.1 Berlin。 |
2017/03 | 25.0 | 正式名称 : Embarcadero® RAD Studio 10.2 Tokyo。 |
2018/11 | 26.0 | 正式名称 : Embarcadero® RAD Studio 10.3 Rio。[2] |
2020/5/26 | 27.0 | 正式名称 : Embarcadero® RAD Studio 10.4 Sydney。 |
2021/9/9 | 28.0 | 正式名称 : Embarcadero® RAD Studio 11 Alexandria。IDE支持高DPI。 |
2023/11/9 | 29.0 | 正式名称 : Embarcadero® RAD Studio 12 Athens。支持Skia。 |
市场状况
编辑Delphi本身是极其优秀的编译器,比C++易学,比VB强大,曾经在国际市场上风靡一时。“真正的程序员用C,聪明的程序员用Delphi”,这句话是对其最经典、最实在的描述。由于Borland公司连续决策失误,以及Microsoft与Java的冲击,使得Delphi衰落。在中国大陆,又由于公司商业策略的考量,Delphi的市占率越来越少。现在大部分的Delphi用户,多为旧版本培养出来的老客户,而后来的Delphi用户则是逐渐减少。之所以会有这种现象,除了微软与Java两大阵营的竞争效应,以及Delphi本身就缺乏中文教材的因素之外,在程序设计的正规教育体系中,此开发工具亦非主流学科。在这样的环境下,如果Delphi得不到强大的软件公司作为后台来重点开发它,就很难再次崛起。免费软件Lazarus在一定程度上也可作为Delphi的互补品。
历史演变
编辑Delphi发展一直到Windows 98出现时候,当时推出的Delphi 5.0才成熟稳定,当时同类型的最大对手是Microsoft的数据库软件Visual FoxPro与老牌可视化的Visual Basic,这时是BDE(Borland Database Engine)与Delphi做数据库配搭最全盛的时候,之后版本支持ADO、SQL、dbExpress等等都是要取代16位的BDE数据库,在Visual Basic大量推行下,可视化的Delphi又有新编程语言Java可选择,开Pascal课程的学校越来越少,市面上愿意出版Delphi的参考书本也越来越少,相对的找不到参考书籍的使用群也减少了。
参见
编辑参考文献
编辑- ^ Announcing the Availability of RAD Studio 12.2 Athens. 2024年9月12日 [2024年9月12日].
- ^ 24 years of Delphi... and Delphi 10.3.1 is out Today!. Marco Tech Blog. [2019-02-18]. (原始内容存档于2019-02-18).
外部链接
编辑- Virtual Pascal官方网站(页面存档备份,存于互联网档案馆):和Delphi、Lazarus同为可视化集成开发环境。
- Delphi K.Top论坛台湾Delphi设计师交流网站Delphi K.Top论坛
- 捷康科技(页面存档备份,存于互联网档案馆)大中华区经销商-捷康科技
- 全球编程语言排名(页面存档备份,存于互联网档案馆)
- Delphi(RAD Studio)重要版本新功能(页面存档备份,存于互联网档案馆)