當(dāng)前位置:首頁 > 技術(shù)學(xué)院 > 技術(shù)前線
[導(dǎo)讀]上位機(jī)編程軟件的選擇

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

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

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

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

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

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

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

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

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

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

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

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

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉