Delphi技術史話說明_第1頁
Delphi技術史話說明_第2頁
Delphi技術史話說明_第3頁
Delphi技術史話說明_第4頁
Delphi技術史話說明_第5頁
已閱讀5頁,還剩1頁未讀, 繼續免費閱讀

Delphi技術史話說明.doc 免費下載

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2008-09-2916:46得知Borland將codegear賣掉之后,心里就有一團火,想整理一下Delphi的歷程,就各處找了些資料組織在一起分享受給大家。我現在開發主要用的是D6和D7,再后面的不過是一些資料上了。資料主要是找的程序員雜志上歐陽璟《風雨34年,Delphi歷程》,不過該文成文于2005年1月,再后面的找了一些資料補上來,實際上都有38年了,我們大多數程序員都沒得這個年紀,呵呵。Delphi的發展歷程是一條清晰的線索,順著這個線索,追溯到上個世紀60年代,技術發展歷程會給我們怎樣的啟示?產品和廠商在經歷了光榮與夢想之后將扮演怎樣的角色?Borland描繪了一個傳奇,而在這個傳奇之后,還將繼續演繹……34年前,瑞士蘇黎士理工學院的尼古拉斯?沃斯(NiklausWirth)教授發明了Pascal語言,這個作為Algol語言的簡化版本一直以來,成為許多人跨入計算機科學的第一道大門。而Algol作為第一個易讀、結構化、有系統的語法定義的高級語言,是Pascal的先驅。Pascal時代為何Pascal從一開始就成為很多人跨入計算機科學的第一道門?從Pascal開始設計,就決定了這個語言是一個用來進行教學和算法描述的計算機語言:強制的數據類型聲明和檢查;獨特的自定義數據類型;結構化程序控制的它還能支持動態數據結構……早期計算機語言所需要的平臺獨立能力讓Pascal流行舉步維艱,因為不管在怎樣的機器上,都需要重新寫出一個編譯器,以應付不同基礎架構的硬件設施和主機系統。UCSDPascal出現在了Pascal歷史的舞臺,這是一個由加州大學圣地亞哥分校(UCSD)的教授KenBowles在AppleII個人電腦上撰寫的Pascal編譯器,它為Pascal帶來了生機,讓人們不必再排隊等候那房間一樣巨大的主機了。接下來的推進是舉世矚目的,即1983年Borland公司開發出的TurboPascal。這種簡潔而又功能強大的開發工具,第一次給所有的程序開發人員一個概念:集成開發環境(IDE)!也就是說,當程序員們編寫程序的時候,他們可以一邊運行編譯器,一邊查看自己的代碼中有哪些錯誤,同時讓他們能跳轉回錯誤的位置修改它們。盡管這樣簡單的功能在如今的年代顯得微不足道,但上個世紀八十年代的程序員們多么希望他們手中的編譯器能有這樣的功能?有人用這樣一句話來記錄計算機的歷史:“1983年11月,Borland公司TurboPascal產品面世造成的影響,不亞于原子彈爆炸的威力?!边@個運行在IBMPC上的經典產品不但成就了語言本身,還成就了Borland公司在開發工具市場上舉足輕重的地位,同時也成就了AndersHejlsberg。Delphi時代經過AndersHejlsberg和他的開發團隊在隨后若干年的努力,Delphi于1995年2月14日誕生。從TurboPascal1.0開始,Anders就開始努力讓Pascal進化,讓它不斷成為一個面向對象的應用程序開發語言。視覺效果極佳的可視化開發環境和極好的數據庫訪問特性,讓Delphi將RAD(RapidApplicationDevelopment)思想有效地體現在開發工具之中。而Delphi中大名鼎鼎的VCL更是軟件開發中的一盞明燈,它作為第一個進入企業應用開發的面向對象的類庫,已經逐漸將框架概念擺在程序員們面前,面向對象的組建思想也隨著Delphi發出光芒。Delphi名稱的來由還有著一段小小的故事。在這個軟件開發界舉世矚目的工具面世之前,它的名字一直是一個謎,包括Borland公司內部也一直對Delphi這個名字爭論不休。Delphi最大的改進來自于對數據庫開發的支持,當時的軟件開發人員對于訪問數據庫總是充滿了無數疑惑,和數據庫(主要是通過SQL查詢語句和Oracle數據庫通信)之間的連接和溝通仿佛是和神明對話一般讓人覺得不可捉摸,于是“Delphi”(古希臘的一座用來和神明對話的圣殿)在公司內部逐漸得到大家的認同,尤其是在整個Delphi和它的開發團隊中,大家更傾向于采用這個名字。然而就在正式版本發布之前,Borland市場部的人們卻殘忍地用更加直接的方法為它命名:AppBuilder。粗俗而且乏味的名字讓開發小組的人們充滿了厭惡。幸運的是,就在產品發布之前,Novell的VisualAppBuilder上市了。Delphi的光輝樂章奏響,這個響亮的名字一致沿用至今。Delphi1(1995)——VBK的傳說它是造成轟動效應的Delphi的第一個版本,這個Windows下的程序開發工具提供面向對象和基于表單的設計方法、極快的本地代碼編譯器、可視化開發環境、強大的數據庫應用程序支持能力、與Windows緊密集成、強大的C/S開發能力、并結合組件技術,讓這個產品成為Borland公司走出困境的法寶,挽救了當時在C/C++工具中陷入困境的開發團隊和公司本身。甚至有媒體造勢,稱之為VBK(VisualBasicKiller)。Delphi和DelphiClient/Server是能提供RAD的開發、基于組件的可視化軟件設計、擁有強大而高效的本地代碼編譯器和可升級的Client/Server解決方案的唯一一款開發工具。這種完全不把對手放在眼里的宣傳方法充分表達了Borland對自身產品的自信。而50萬套以上的銷售量,也恰恰證明了他們的自信。Delphi2(1996)——純Win32Delphi2是唯一具有全部下列特性的RAD開發工具:全世界最高效的32位本地代碼編譯器、生產率極高的基于組件的可視化設計、在強壯的面向對象環境下有彈性和可升級的數據庫應用架構。2.0的推出,讓Borland在RAD工具的生死之戰中取得了極為有利的位置,緊密集成在Win32平臺下的Delphi2.0大幅度提高了數據庫網格能力并提供OLE自動控制、多樣化數據類型支持、LongString數據類型和可視化表單繼承,當時更有人說Delphi2具有VB的簡易性,卻擁有C++的效率和強大功能。事實也確實如此。Delphi3(1997)——COM/DCOM開發最全面的可視化、高效Client/Server開發工具,適合分布式企業和Web應用程序開發。Delphi3是Hejlsberg脫離Delphi開發團隊以后的第一個Delphi版本,這個產品依然在開發行業造成了非常良好的影響,同時,也將它的競爭對手PowerBuilder和Gupta遠遠甩在了身后。這一版本的Delphi開始面向企業級應用領域,支持分布式的企業級開發,并在其內部提供了較好的COM/DCOM支持,它主推的技術包括:CodeInsight技術、DLL調試、組件模版、新的DecisionCube與TeeChart組件等開發技術。這個版本的銷售,使得Delphi成為歷史上賣得最好的系列開發工具。曾經光芒萬丈的Hejlsberg也在這個時候被微軟公司以相當優厚的條件挖走了。Delphi4(1998)——早產的嬰兒Delphi4是一個集專業開發和Client/Server開發,并能有效提高分布式解決方案生產力的開發工具。新版本提供Java協同工作能力、高效的數據庫驅動、CORBA開發以及微軟BackOffice支持。在更高效的定制、管理、可視化和數據更新方面非Delphi莫屬。使用它作為應用程序開發工具提交產品,能在時間和預算兩方面提高生產效率。迫于Borland公司銷售的壓力,這個早產的嬰兒成為Borland產品線上的一大敗筆。盡管Delphi4的許多新功能仍然造成了不少的亮然而品質的低下以及產品問題百出,相當于砸碎了Delphi系列產品的金字招牌。雖然這一版本的Delphi仍然有許多技術亮點:AppBrowser、動態數組、方法重載、Windows98支持、OLE和COM組件支持的提高也擴展了數據庫的支持,但是該產品卻依然被很多開發人員叫罵。Delphi5(1999)——力挽狂瀾為Internet開發提供更高生產力。4.0版本失利后,DannyThorpe挑起了Delphi下一版本的重任。作為5.0的架構師,Danny繼續改善DelphiRTL(Run-time-Library),同時,他還進一步改進了ObjectPascal語言本身。這一版本的產品中加入了如下特點:多樣的桌面布局、框架概念的提出、并行開發、調試器完善、Internet開發能力(XML)、以及ADO的數據庫支持等。Delphi5成為繼Delphi3以來最好的一個產品,它成功地挽救了Borland公司的聲譽,并讓世人認識了另一個軟件開發大師DannyThorpe。Delphi6(2000)——跨平臺的突破BorlandDelphi是第一個提供Windows下全面支持WebServices的快速應用程序開發環境。采用Delphi,程序員團隊和個人都能快速而且輕松地開發下一代的電子商務應用程序。嚴格來說,Delphi6并不是一個非常成功的產品。至少對于開發行業的人們來說,它可圈可點之處比較有限:IDE、XML、編譯器、COM/ActiveX和數據庫方面有一定的提高;更為重要的是Kylix的推出,使得Delphi開始具備跨平臺的能力;新的組件和類、DBExpress引擎對WebService的支持也是這個版本的亮點。.NET時代Delphi7(2002)——.NET年代新語言注:至少我個人看是看不到太多.net的痕跡的。BorlandDelphi7讓程序員期盼已久的將自己應用程序移植到.NET平臺成為現實。自由地使用Delphi,你將控制一個完整的電子商務開發工具,并享受輕易將解決方案移植到Linux的自由。隨著微軟極力推廣.NET平臺,Borland也對此有所反應,并結合.NET,推出Delphi7的版本。這個版本的出現,讓Delphi徹底取代ObjectPascal語言,成為一種真正的開發語言,同時基于.NET平臺的VCL.NET,讓程序員非常方便地開發.NET應用程序。作為一個相當穩定的版本,Delphi7的缺點主要在于缺少一個.NETFormDesigner。迄今為止,Delphi7仍然是整個Delphi系列中,用戶最多的一個版本,它是無數Delphi程序員工作的最佳拍檔。Delphi8(2003)——語言變革這個版本的Delphi將語言層面的上的一些機制進行了非常大的改進,同時還提供了新的集成開發環境和新的VCL及CLX,并繼續支持在Linux環境下的編譯器。對語言層面上的細節,有專家評論說:“Delphi7中的語言與以前版本相比并沒有根本性改變,這一改變實際上是發生在Delphi8中的。”語言上的改變主要表現在下面的幾個方面:名字空間、嵌套類型、類靜態方法、對記錄類型的增強、密封類和Final方法、多播事件機制、運算符重載、裝箱拆箱以及元數據。盡管這個產品在語言機制上有了較大的改進、但這一版本的產品,卻無法贏得Delphi程序員的心。這個產品內無數Bug使程序員們怨聲載道。更多的人們默不作聲地重新選擇VisualStudio.NET作為自己的開發工具。因為它的失敗,讓Delphi閃亮的光彩逐漸暗淡。因為Pack不是解決問題的最好辦法。新時代Delphi2005(2004)——建模、協作與集成在微軟.NET的絞殺下,人才的流失,Delphi8的慘敗,Borland遭遇了空前的危機。在Microsoft欲借.NET一統江湖的淫威下,Borland匆忙應戰,推出Delphi8,結果非但沒能吸引住原來的Delphi用戶,更將大量的用戶無情地送上了MS的懷胞。Borland能否再鑄昔日輝煌,Delphi2005就成了背水一戰,因此BorCon2004也比以往任何一屆都更被世人所關注。然而,就在Borland忙著欲借Delphi2005重整雄風時,Kylix與C++Build卻一直杳無音訊。終于,有人坐不住了,幾百位來自世界各地的精英們,共同聯名給Borland寫了這封公開信。2004年8月,開發代號為DiamondBack的Delphi9相關消息就從Borland內部呼之欲出。望眼欲穿的Delphi程序員們懷著對Borland的感情和對Delphi語言的熱愛翹首期盼,希望這個版本的Delphi將帶來非同凡響的亮點。然而就在新產品面世之前,Borland社區的開發者們早已按耐不住對Borland的期望,公開簽名致信Borland管理層。他們終于無法忍受這種商業模式極強的產品行銷方式了,他們更加渴望的是為程序員設計的開發工具。2004年11月8日,Delphi9終于發布了,這次,它被命名為Delphi2005。盡管Borland為這個產品大造聲勢,但是在Borland社區卻反響平平,很多使用了十幾年Delphi的程序員們似乎并不關注這個新產品,相較之前Delphi新版本推出,這次產品的發布確實冷清了不少。9.0在一些技術方向上又有了不少亮點,其中最重要的幾個方面表現在IDE的加強、ECO的加強、高性能Web開發、集成協作的StarTeam產品、集成建模功能等幾個方面。它是否帶來了新的訊號?它是否表現開發工具的發展趨勢?如VCL一般光彩奪目的技術還會再次給Delphi帶來光芒?未來軟件開發技術將怎樣發展?我們拭目以待。語法:加入了inline及forinloop等功能。IDE:把BorlandDelphi.Net、BorlandDelphiWin32、BorlandC#、EnterpriseCoreObjects等環境和功能集成成一個開發工具BorlandDeveloperStudio(BDS)2006(2005年)集成C++Builder;ECO(EnterpriseCoreObjects)升級到ECOIII;集成TogetherforDelphi,可以在同一個IDE中進行UML開發;QAAudits和QAMetrics可以快速的把握專案的設計和代碼的質量。2006TurboBorland將BDS2006拆分成幾個獨立的版本(Delphiforwin32、Delphifor.net、C#、C++Builder),而且不能同時安裝兩個不同的版本。由於Borland的IDE生産部份獨立成為一家名為codegear的公司,所以這個版本是以Borland名義推出的最後一個版本。CodeGearRADStudio-Delphi2007CodeGear公司也沒有撐多久,幾年時間發布了二個版本,2009還是在新公司收購后發布的,也就是以Codegear發布的只有這一個版本了。發布了二個版本Delphi2007forwin32和Delphi2007forPHP??磥硎乔皫讉€版本中.net的功能實在是失敗,只好重新把自己的亮點拿出來,現實上現在用Delphi的也絕大多數是在win32開發了,快速開發的效率尤其是在數據庫信息處理領域還是無敵的存在,不過給C#搶占了不少份額。下面是找到的一份說明特性的文字,Delphi2007forWin32一些技術亮點:1、IDE工具采用.Net2.0來編寫,安裝時候需要.NetFrameWork2.0,但編譯出來的Exe是純正的Win32程序,發布不需要.NetFrameWork2.0。新IDE采用.NetFrameWork2.0是為了更好的統一IDE平臺,利用.Net的反射、泛型等高級特性,節省編寫IDE時間。新的IDE確實比D7啟動還要快,大概是五六秒時間左右就啟動,跟VS.Net2005差不多。演示中,新的IDE編譯新建工程比D7還要快一點。2、Delphi2007支持Vista界面,封裝了Vsita的新API函數。3、Delphi2007有一個功能很有意思,支持D2006的所有BPL組件。意思是,如果你用D2006編譯過的BPL,沒有源碼和DCU,也可以直接安裝在Delphi2007。哈哈,這個是delphi版本上的史無前例,即使第三方控件包來不及支持Delphi2007,也不妨礙開發人員從D2006升級到Delphi2007做項目開發。4、支持MSBuild。比如支持Debug、Release。也支持編譯前和編譯后事件,可調用BAT文件。比如,你編譯前郵件告訴老板,你要給我加薪50%,否則十分鐘后銷毀源代碼。另外,也可以修改其XML格式,只編譯特定的程序代碼。5、Delphi2007forWin32數據集控件全面支持Unicode。比如,你的數據庫表字段可采用中文名稱作字段。Filter也支持Unicode。唉,為了這個filter支持Unicode,有些人在delphiBBS上苦苦守候了六七年。但delphi2007的UI(可視化界面)還不是全面支持Unicode。比如,你的DBGrid就不能支持中文、韓文(不說狗屁日文)、阿拉伯文等同時顯示。原有的Vcl框架大量采用string聲明而不是WideString,據李維講,CodeGear會將Vcl全面支持Unicode,但要考慮一種最佳的平衡方法。6、非常棒的DBX4。dbExpress將要統一混亂的數據庫連接組件,底層全部改寫。無論在Win32還是Win64上,可兼容本機代碼和托管代碼。呵呵,舉個例子,DBX4可支持ADO,也可以支持ADO.Net。這一點,M$也做不到。DBX4新增加了ConnectionPool高級組件。更令人心動的是,開放DriverSource,可自行擴展屬性和方法,哈哈,ColreLab公司這回可高價賣不出去dbExpress驅動了。DBX4也全面支持Uicode。7、Delphi2007forWin32支持Ajax技術—Intraweb9.0。Intraweb9.0組件封裝了Ajax,以事件方式來驅動程序。Intraweb9.0的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論