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)重要版本新功能(頁面存檔備份,存於互聯網檔案館)