亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Delphi > 正文

Delphi的優點

2019-11-18 19:00:22
字體:
來源:轉載
供稿:網友
//來自<Delphi 5 Developer's Guide>

1.2 Delphi 是什么
我們經常會問這樣的問題:“到底什么使得D e l p h i 如此優秀?”和“為什么和別的編程工具相比,我更愿意選擇D e l p h i ?”等等。這些年來,我們對這類問題已經得出了兩種答案,一長一短。短的就是:高效性。要創建Wi n d o w s 應用程序,使用D e l p h i 是我們能夠找到的最為簡捷的途徑。當然,有些人(老板們和未來的客戶們)并不滿足于這個答案。因此,我們必須推出我們的詳細解答,它闡述了使得D e l p h i 如此高效的綜合因素。我們把決定一個軟件開發工具效率的因素歸結為以下五點:
&#8226; 可視化開發環境的性能。
&#8226; 編譯器的速度和已編譯代碼的效率。
&#8226; 編程語言的功能及其復雜性。
&#8226; 數據庫結構的靈活性和可擴展性。
&#8226; 框架對設計和使用模式的擴充。
雖然還有許多其他因素應該包括進去,如配置、文檔、第三方的支持等,但我們已發現這是向人們解釋我們為什么選擇D e l p h i 的最確切、最簡單的方式。當然,上述五點也可能包含了一些主觀因素,但關鍵在于:你使用一種特定工具進行開發時,到底能有多大的效率?如圖1 - 1 所示,對一種工具的各方面性能進行評估量化( 1 到5 之間),并分別標在圖1 - 1的各條軸線上,最后就能得到一個五邊形。五邊形的面積越大,則這種工具的效率越高。

毋需告訴你我們使用這種方法得到了什么答案―你自己一試便知!下面讓我們來仔細地看一下D e l p h i 在這幾方面的性能如何,并把它們和其他Wi n d o w s 開發工具做一比較。

1.2.1 可視化開發環境
可視化開發環境通常分為三個組成部分:編輯器、調試器和窗體設計器。和大多數現代R A D (快速應用開發)工具一樣,這三部分是協同工作的。當你在窗體設計器中工作時,D e l p h i 在后臺自動為你正在窗體中操縱的控件生成代碼。你還可以自己在編輯器中加入代碼來定義應用程序的行為,同時還可以在同一個編輯器中通過設置斷點和監控點等來調試程序。

總的來說D e l p h i 的編輯器和其他工具的編輯器類似,但它的C o d e I n s i g h t 技術卻省去了許多輸入工作的麻煩。這一技術是建立在編譯器信息之上的,而不是基于像Visual Basic 等使用的類型庫,因此應用范圍更廣泛。雖然D e l p h i 的編輯器也設置了許多不錯的配置選項,但我覺得Visual Studio 的編輯器配置余地更大。在版本5 里,D e l p h i 的調試器功能終于趕上了Visual Studio 的調試器,具備了許多先進的功能,如遠程調試、過程關聯、D L L 和包調試、自動本地監控以及C P U 窗口等。D e l p h i 還支持在調試時隨意放置和??看翱诓堰@一狀態保存為命令的桌面設置。由此,D e l p h i 的I D E 實現了對調試功能的良好支持。

正如經常在一些集成環境(如V B 和某些J a v a 工具)中見到的那樣,一個性能非常完善的調試器的長處就在于:應用程序被調試時能修改它的代碼,從而改變它的行為。遺憾的是,由于這種功能在編譯成本地代碼時過于復雜而無法實現,故不能為D e l p h i 所支持。
對R A D 工具(如D e l p h i 、Visual Basic 、C + + B u i l d e r 和P o w e r B i l d e r 等)來說,窗體設計器是一項獨特的功能。一些更為經典的開發環境,如V C + +和B C + +,都提供了對話編輯器,但卻沒有將窗體設計器集成到開發流程中。由圖1 - 1 的效率圖可以看出,沒有窗體設計器將會降低開發工具的整體效率。幾年可視的來,D e l p h i 和Visual Basic 在完善窗體設計器的功能方面展開了激烈的競爭。它們的新版本功能一個比一個強。D e l p h i 的窗體設計器的與眾不同之處在于,D e l p h i 是建立在一個真正面向對象的框架結構基礎之上的。這樣,你對基類所做的改變都將會傳遞給所有的派生類。這里涉及的一項關鍵技術就是VFI(visual form inheritance),即可視化窗體繼承。V F I 技術使你能夠動態地繼承當前項目或對象庫中的任何其他窗體。一旦基窗體發生改變,派生的窗體會立即予以更新。在第4 章“應用程序框架和設計”中有對這一重要功能的詳細解釋。

1.2.2 編譯器的速度和已編譯代碼的效率
快速的編譯器可以使你逐步遞進地開發軟件,經常地修改源代碼、重新編譯、測試、再修改、再編譯、再測試. . . . . .形成這樣一個良好的開發循環。如果編譯速度很慢,開發者就不得不分批地修改代碼,每次編譯前進行多處修改以適應一個低效率的循環過程。提高運行效率、節約運行時間、生成的二進制代碼更為短小,其優越性是不言而喻的。

也許P a s c a l 編譯器最著名的特點就是速度快,而D e l p h i 正是建立在這種編譯器的基礎之上的。事實上,它可能是針對Wi n d o w s 的最快的高級語言本地代碼編譯器。以往速度很慢的C + +編譯器在近年來取得了很大的進步,增加了鏈接和各種緩存策略,尤其是在Visual C++和C + + B u i l d e r 中。但即便如此,C + +的編譯器還是比D e l p h i 的慢了幾倍。

編譯速度一定能與運行效率成正比嗎?當然不是。D e l p h i 和C + + B u i l d e r 共享同一種編譯器后端,因此生成的代碼等效于由一個優秀的C + +編譯器生成的代碼。根據最新的可靠評估標準,Visual C++在許多場合都被認為在編譯速度和生成代碼長度方面是最有效的,這得益于一些極為有力的優化措施。雖然對通常的應用程序開發來說,這些細小的優越性難以被注意到,但如果你正在編寫復雜的計算代碼,那么它們就會發揮作用。

Visual Basic 的編譯技術有點特別。在開發過程中,V B 以一種集成的方式運作,而且反應相當敏銳。這種編譯器速度比較慢,生成的可執行代碼的效率也遠遠不及D e l p h i 和C + +工具。

J a v a 是另一種有趣的語言。最新的基于J a v a 的工具語言J B u i l d e r 和Visual J++自稱其編譯速度能趕
得上D e l p h i ,但是生成代碼的執行效率卻不盡人意,因為J a v a 是一種集成語言。雖然J a v e 在穩步地前進,但在大多數場合,其運行速度卻仍與D e l p h i 和C + +相距甚遠。

1.2.3 編程語言的功能及其復雜性
在旁觀者的眼里,一種語言的功能和復雜程度是極為重要的,這也是許多爭論的熱點。對這個人來說簡單的東西,對那個人來說可能很難;對這個人來說功能有限的東西,對另一個人來說卻可能是非常完美的。因此,以下幾點僅源于作者個人的經驗和體會。

從根本上來說,匯編是一種最有力的語言。用它你幾乎無所不能。但是,即便是用匯編開發最簡單的應用程序,難度也非常大,還可能一無所獲。不僅如此,要想在一個小組開發環境中保留一段匯編代碼,不管保留多長時間,有時也是根本不可能的。因為代碼從一個人傳給另一個人、再到下一個人,設計思想和意圖越來越不明朗,直到代碼看起來如同天書。因此,我們對匯編的評價很低,它雖然功能很強大,但對幾乎所有的開發者來說都太復雜了。

C + +是另一種極為有力的語言。在它的潛在功能(如預處理器宏、模板、操作符加載等等)的幫助下,你幾乎可以使用C + +設計你自己的語言。只要合理地使用其豐富的功能選項,就可以開發出簡潔直觀、易于維護的代碼。然而,問題是,許多的開發者總濫用這些功能,這就很容易導致發生重大錯誤。事實上,寫出糟糕的C + +代碼反倒比寫出好的C + +代碼更容易。因為這種語言自己不會朝著好的設計方向前進―這由開發者決定。

Object Pascal 和J a v a 給我們的感覺很相似,因為它們很好地把握住了復雜性和功能性的平衡。它們都采取了這樣一種途徑,即限制其可用功能以加強開發者的邏輯設計。例如,兩者都避免了完全面向對象但卻容易被濫用的多重繼承的觀念,而是實現了一個執行多重接口功能的類。兩者都不支持美觀卻危險的操作符加載。兩者都有一些強大的功能,諸如異常處理、運行期類型信息( RT T I )和生存期內存自管理字符串。同時,兩種語言都不是由專門的編委會寫出來的,而是來自于單個組織中對這種語言有著共同理解的的個人或小組。

Visual Basic 最初是為了使編程初學者入門更容易、進步更快而設計的(名字也由此而來)。但是作為一種語言,V B 也要不斷地取長補短,這使得它近年來也變得越來越復雜了。為了對開發者隱藏這些細節,V B 仍然保留了一些向導以創建復雜的項目。

1.2.4 數據庫結構的靈活性和可擴展性
由于B o r l a n d 缺少一種數據庫計劃,因此D e l p h i 保留了我們認為是所有工具中最靈活的數據庫結構。對大多數基于本地、客戶/服務器和O D B C 數據庫平臺的應用程序來說,B D E 的功能都非常強大。如果你對此不滿意,可以避開使用B D E 以支持新的本地A D O 組件。如果你沒有裝A D O ,可以自己創建數據訪問類或者購買第三方數據訪問解決方案。此外,M I D A S 使對數據源的多層訪問更易于實現。M i c r o s o f t 的工具( O D B C 、OLE DB 或者其他)從邏輯上來說趨向于支持M i c r o s o f t 自己的數據庫和數據訪問解決方案。

1.2.5 框架對設計和使用模式的擴充
這是一項經常被其他軟件設計工具忽略了的重要功能。V C L 是D e l p h i 最重要的組成部分。在設計時操縱組件、創建組件、使用O O (面向對象)技術繼承其他組件的行為,這些能力都是決定D e l p h i 效率的關鍵因素。在許多場合,編寫V C L 組件都采用固定的O O 設計方法。相比之下,其他基于組件的框架經常過于死板或過于復雜。比如A c t i v e X 控件具有和V C L 控件相同的設計期性能,但卻不能被繼承以創建一個具有其他不同行為的新類。傳統的類框架,如O W L 和M F C ,需要你有大量的內部結構知識,而且如果沒有R A D 工具的設計期支持,其功能將會受到抑制。將來能夠與V C L 的功能相媲美的一個工具是Visual J++的W F C ( Windows Foundation Classes),即Wi n d o w s 基礎類。但是由于Sun Microsystems 對J a v a 問題的訴訟仍懸而未決,Visual J++的前景還不明確。


上一篇:一個實用的Delphi屏幕拷貝程序的設計

下一篇:Delphi開發經驗四則

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩精品极品在线观看播放免费视频| 亚洲国产免费av| 97国产真实伦对白精彩视频8| 中文字幕久久久av一区| 亚洲电影免费观看高清完整版在线观看| 国产精品视频一区二区三区四| 66m—66摸成人免费视频| 日韩欧美999| 欧美精品在线免费| 国产精品吹潮在线观看| 日日骚av一区| 国内伊人久久久久久网站视频| 国产午夜精品一区二区三区| 久久免费国产视频| 国模吧一区二区三区| 久久久久久一区二区三区| 欧美激情精品久久久久| 国产精品男女猛烈高潮激情| 亚洲欧洲国产精品| 久久男人资源视频| 日韩精品在线视频观看| 91av在线免费观看视频| 国产精品久久久久久久久借妻| 欧美亚洲国产精品| 午夜精品一区二区三区av| 亚洲精品国产精品国自产在线| 国产精品久久久久久久久久久久久久| 亚洲综合一区二区不卡| 91国偷自产一区二区三区的观看方式| 成人免费淫片视频软件| 欧美日韩成人黄色| 色偷偷偷综合中文字幕;dd| 97精品国产97久久久久久春色| 国产69久久精品成人看| 久久影视免费观看| 91精品久久久久久久久久久| 久久精品久久久久电影| 日韩高清人体午夜| 精品高清一区二区三区| 77777亚洲午夜久久多人| 91成人性视频| 亚洲色图国产精品| 日本一本a高清免费不卡| 亚洲综合中文字幕在线观看| 福利一区福利二区微拍刺激| 日韩中文字幕国产| 国产日产亚洲精品| 国产精品十八以下禁看| 精品福利一区二区| 亚洲精品wwww| 日韩精品在线免费| 日韩国产高清污视频在线观看| 国产精品久久久久久久久久| 欧美专区国产专区| 亚洲免费小视频| 国产精品欧美日韩| 国产精品色婷婷视频| 久久亚洲国产成人| 亚洲国产精品久久久| 欧美日本国产在线| 国产日韩欧美夫妻视频在线观看| 亚洲精品久久久久久久久久久久| 欧美一区二三区| 国产在线视频2019最新视频| 91国产视频在线| 国产成人短视频| 国产美女久久精品| 欧美高清在线观看| 日韩欧美国产骚| 欧美高清性猛交| 伊人亚洲福利一区二区三区| 欧美日韩成人精品| 精品国产91乱高清在线观看| 久久精品青青大伊人av| 亚洲免费人成在线视频观看| 日韩精品在线观看一区二区| 91在线视频精品| 欧美最猛性xxxx| 91香蕉嫩草影院入口| 日产精品久久久一区二区福利| 久久久爽爽爽美女图片| 91九色综合久久| 日韩精品免费视频| 成人免费视频a| 海角国产乱辈乱精品视频| 欧美日韩在线观看视频小说| 欧美一区第一页| xvideos成人免费中文版| 国产精品高潮在线| 亚洲美女性生活视频| 中文字幕在线看视频国产欧美| 日韩精品在线看| 97香蕉久久超级碰碰高清版| 日本精品一区二区三区在线播放视频| 亚洲欧洲黄色网| 国产精欧美一区二区三区| 国产欧美精品一区二区三区介绍| 成人国产在线视频| 国产在线高清精品| 国产日韩欧美自拍| 国产成人精品综合久久久| 91中文字幕在线观看| 欧美人与性动交a欧美精品| 日韩欧美高清视频| 国产精品福利网| 日韩美女毛茸茸| 亚洲夜晚福利在线观看| 奇门遁甲1982国语版免费观看高清| 亚洲高清久久久久久| 97国产在线视频| 欧美午夜激情视频| 亚洲一区免费网站| 成人欧美一区二区三区黑人孕妇| 亚洲深夜福利在线| 91精品国产高清久久久久久91| 中文字幕日韩欧美在线视频| 26uuu另类亚洲欧美日本老年| 国产女人精品视频| 国产亚洲人成网站在线观看| 欧美亚州一区二区三区| 国产精品一区专区欧美日韩| 国产91久久婷婷一区二区| 在线观看欧美日韩国产| 日本久久久久久久| 亚洲精品国产成人| 亚洲免费中文字幕| 精品视频一区在线视频| 日韩在线不卡视频| 欧美大全免费观看电视剧大泉洋| 欧美孕妇与黑人孕交| 美女国内精品自产拍在线播放| 91网站免费观看| 揄拍成人国产精品视频| 欧美一级视频在线观看| 欧美性猛交xxxxx水多| 色琪琪综合男人的天堂aⅴ视频| 国产偷亚洲偷欧美偷精品| 韩日精品中文字幕| 欧美亚洲在线视频| 久久精品国亚洲| 国产精品国内视频| 欧美激情精品久久久久久久变态| 午夜免费在线观看精品视频| 丁香五六月婷婷久久激情| 夜色77av精品影院| 国产美女91呻吟求| 国产视频综合在线| 97国产成人精品视频| 日韩精品极品在线观看| 亚洲精品日韩丝袜精品| 亚洲国产成人在线播放| 久久久久久久久国产精品| 亚洲va久久久噜噜噜久久天堂| 久久久久久久久久国产精品| 国产精品老女人精品视频| 欧美最猛性xxxxx亚洲精品| 国内精品视频在线| 久久久久久亚洲精品不卡| 91九色综合久久| 国产精品女人网站| 97国产精品视频| 亚洲成色999久久网站| 欧美日韩国产精品一区二区不卡中文| 日韩中文字幕视频在线|