Delphi技術(shù)史話說明_第1頁
Delphi技術(shù)史話說明_第2頁
Delphi技術(shù)史話說明_第3頁
Delphi技術(shù)史話說明_第4頁
Delphi技術(shù)史話說明_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

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

溫馨提示

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

評論

0/150

提交評論