日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 技術(shù)學院 > 技術(shù)前線
[導讀]上位機編程軟件的選擇

上位機編程軟件的選擇對眾多初學者來說,絕對是一個難以決策的事情。在作為一種編程工具的意義上,我們認為各個軟件如:CB(C++Builder) 和VC(VisualC++)沒有什么本質(zhì)的區(qū)別。就像Word2000 和WPS2000 在本質(zhì)都是字處理軟件一樣,對于語言就象我們都用中文在Word2000 和WPS2000 寫文章表達我們思想。CB和VC都是用C++。其它軟件都有相同或不同的語言。如VB用的是Basic語言,Delphi用的Pascal語言。

由于應(yīng)用不同的領(lǐng)域,所以選擇的條件也不同。如果你主要是從上位機傳傳參數(shù)設(shè)置,顯示一些簡單的狀態(tài),而以下位機控制為主,則所側(cè)重于快速上手應(yīng)用,而不需要去深入研究。當然還要考慮從你熟悉的語言相結(jié)合。下位機編程一般用C語言和匯編,當然你也可能用其它語言。如果你僅會這兩種,那么上位機就考慮和其差不多的C或C++來編寫。如果你也會其它的語言,當然選擇范圍更廣一些。由于C對界面操作上的復雜化,所以我們一般不會用C來寫一界面類的東西。接下來進一步縮小了選擇范圍,所以只有VC和CB比較適合了。

對于此兩款軟件歷來爭議較大。VC有大量的教材和實例程序,還有微軟的支持;而CB雖然有良好的界面組件,但相關(guān)資料確實很少,你到任意一家書店,很難找到幾本象樣的教材,有的剩至根本沒有,有的只是N多年前對幫助文件翻譯過來東西,而VC最少有一架或幾架的各類書藉。這是讓初學CB最為頭大的事情,不過現(xiàn)在還好,由于互聯(lián)網(wǎng)的強大,和廣大CB愛好者的熱心。網(wǎng)絡(luò)上CB的資料已經(jīng)很多了。

通過上面的分析我們可以作出一些考慮,如果以下位機為主可以選擇CB,以上位機為主可以選擇VC或CB。當然僅作參考,還一句話沒有最好的軟件,只有最適合你的軟件。以下引用《C++ Builder教程》的節(jié)選:

但現(xiàn)在我們要從另外一個角度討論C++ Builder 這個編程工具。這個角度就是“封裝”——面向?qū)ο缶幊趟枷胫械淖钪匾彩亲罨A(chǔ)的概念。一個要學習編程的人,可能從C 開始學起。學C 時,我們沒有接觸那些挺玄的概念,到了C++,一切就來了,什么面向?qū)ο?,什么封裝、繼承、多態(tài)……于是我們興奮起來,努力去理解、掌握,運用這些概念所代表的技術(shù),在掌握這些別人暫時未能理解的概念之后而頗有成就感……。

現(xiàn)在我要問的是,為什么要有這些概念?這些技術(shù)?正確回答這個問題,不僅有助于我們今后對編程語言各種概念的學習,而且它能讓我們避免成為新技術(shù)的奴隸,這一切也許聽起來有些形而上,不過我想通過以下討論,至少可以回答一個很現(xiàn)實的問題:為什么要選C++Builder?而不是我們更常聽的VC?這是我碰到的編程初學者較疑惑的問題之一。

如果人類長有翅膀,那么飛機大抵永遠不會被發(fā)明。飛機的發(fā)明,是為了彌補人類自已不能飛翔的缺陷。不能說所有的技術(shù)都是這樣,但C++對于C 的發(fā)展,完全是為彌補程序員腦力的不足。一個在校生在學會C 后,往往并沒有機會用C 去實踐一個大中型的項目,體會不到在一個龐大軟件工程中,非面向?qū)ο笳Z言的短處,所以在之后學習C++的過程中,也就很難真正體會到面向?qū)ο笳Z言的長處。簡短一點說:不知道C 的短處,就不懂C++的長處。相反,倒是很快就發(fā)現(xiàn)C++的缺點:它的代碼效率多數(shù)情況下都要比C 低不少。

前面我們說過低級語言與高級語言的對比,C++語言也正是從語法結(jié)構(gòu)和語言功能上來限定或?qū)崿F(xiàn)一門編程語言更加接近人在現(xiàn)實生活中的思維習慣,從而達到減輕人的記憶和判斷上的負擔。這其中最佳的方法之一就是所謂的“封裝”。

VC 的封裝類庫稱為MFC,它是一種很低階的封裝,它并沒有按照人類的思維習慣來重新組織和解釋Windows 對象(指Windows 編程中所需的數(shù)據(jù),處理,機制,接口), 而純粹是API 一對一的翻版。這樣的封裝工作帶來代碼封裝所固有的代碼效率降低的副作用,卻沒有給使用者帶來任何方便。如果你是編程初學者,而你身邊又有VC 高手,那么你一定要多多向他學習請教,因為一個真正的VC 編程高手,其同時一定也是一個深刻理解Windows 內(nèi)核機制(消息循環(huán),內(nèi)存管理,多任務(wù)實現(xiàn),資源使用等),熟悉Windows各種常用API 函數(shù)等等的高手。

C++Builder 對封裝庫稱為VCL(帶VC 字樣,可別以為它是Visual C++,其實它是:Visual Component Library,即:可視控件庫)。

VC 的MFC 和CB 的VCL 都是基于(但不限于)對Windows API(應(yīng)用程序接口函數(shù))的封裝,為什么要對API 進行封裝?這就是回到了我們前面說過的,為什么有了C 又會有C++的問題。因為操作系統(tǒng)是用C 和匯編寫成的,它獲得到操作系統(tǒng)必須的代碼效率,但對應(yīng)用程序開發(fā)者而言,它失去了易用性。所以微軟和Borland 都使用高級語言對之進行封裝工作。二者誰進行得更好呢?

要想成為Windows 編程高手,最終一定要繞過各種封裝,理解Windows 對象。但作為一個初學者,我們必須挑選一個好的封裝。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉