天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

windows程序設(shè)計(jì)第7版_oldmanzhao的專欄

發(fā)布時(shí)間:2016-11-21 18:18

  本文關(guān)鍵詞:windows程序設(shè)計(jì),由筆耕文化傳播整理發(fā)布。


有很多初入門(mén)的小朋友跟我說(shuō),他們想學(xué)“底層”的技術(shù),因?yàn)橛X(jué)得技術(shù)含量高,所以想學(xué)Windows C++開(kāi)發(fā),看著調(diào)用一個(gè)個(gè)的參數(shù)超級(jí)多,調(diào)用起來(lái)超級(jí)麻煩的Windows API,覺(jué)著很酷。于是我念頭一轉(zhuǎn),就有了這篇文章,根據(jù)我多年來(lái)做Windows 客戶端的經(jīng)驗(yàn),跟大家談?wù)刉indows C++,該從哪一方面入手,這不會(huì)是一個(gè)有技術(shù)深度的文章,只是偶爾會(huì)涉及到一些術(shù)語(yǔ)以及一些入門(mén)書(shū)籍而已,對(duì)于Windows開(kāi)發(fā)的老鳥(niǎo)們來(lái)說(shuō),只當(dāng)是看著好玩了。

首先來(lái)談?wù)勛畛醯腤indows開(kāi)發(fā)。

如果打開(kāi)《Windows程序設(shè)計(jì)》這本書(shū),關(guān)于Windows開(kāi)發(fā)的來(lái)龍去脈就一目了然了。但是要注意,《Windows程序設(shè)計(jì)》是一本純講述Windows API的書(shū),確切的說(shuō),這本書(shū)主要講的是關(guān)于Windows 用戶態(tài)的API,也就是User32.dll GDI32.dll這兩個(gè)庫(kù)文件中的函數(shù),大部分的內(nèi)容都是關(guān)于Windows最基本的窗口元素的操控方面的API,比如創(chuàng)建窗口,繪制窗口,關(guān)閉窗口,消息循環(huán)等等。這本書(shū)不需要你有C++方面的知識(shí),理論上說(shuō)只要你有C語(yǔ)言的基礎(chǔ)就可以看懂,但是如果你連C語(yǔ)言的基礎(chǔ)也沒(méi)有,看這本書(shū)可能會(huì)發(fā)生一些困難,如果你學(xué)過(guò)其它一門(mén)非面向?qū)ο蟮恼Z(yǔ)言,這本書(shū)實(shí)際上也能夠勉強(qiáng)看懂。我在大學(xué)的時(shí)候就看了這本書(shū),但是直到現(xiàn)在也沒(méi)有看完,書(shū)中的某些知識(shí),實(shí)際上在Windows開(kāi)發(fā)中已經(jīng)很少用到了,我個(gè)人認(rèn)為是沒(méi)有必要把這本書(shū)從頭到位看一遍的,在看了前面幾章以后,我就蠢蠢欲動(dòng),寫(xiě)了一些簡(jiǎn)單的程序,迅速鞏固了關(guān)于這些API調(diào)用的記憶,為今后進(jìn)化到Windows C++階段打下了一個(gè)良好的基礎(chǔ)。所以,寫(xiě)程序是很重要的,這個(gè)階段,我建議大家寫(xiě)一些簡(jiǎn)單的程序,比如打字測(cè)速程序,自己創(chuàng)建一個(gè)消息循環(huán),創(chuàng)建一個(gè)窗口,創(chuàng)建一個(gè)光標(biāo),用GDI函數(shù)輸出圖形及文字,這樣下來(lái),基本的windows程序設(shè)計(jì)概念就有了,不過(guò)注意寫(xiě)的時(shí)候不要大段的Copy書(shū)上的代碼,全部自己寫(xiě),否則無(wú)助于理解各個(gè)API的含義,這個(gè)程序,因?yàn)槭亲约簩?xiě)的第一個(gè)Windows程序,所以時(shí)間限定在一個(gè)月到一個(gè)半月之內(nèi)比較合適。度過(guò)這個(gè)階段以后,Windows編程的基本概念就應(yīng)該在你腦海中形成了。

下面進(jìn)入第二個(gè)階段,也就是C++風(fēng)格的Windows開(kāi)發(fā),也就是職場(chǎng)上需求量很大的Windows C++程序員干的事。

這時(shí)候你需要了解一下這個(gè)老掉牙的叫做MFC的東西,MFC是啥呢,其實(shí)是一個(gè)很原始的,用代碼來(lái)拼搭界面的C++庫(kù),當(dāng)然,因?yàn)槭荂++庫(kù),所以你必須具備了一定的C++知識(shí)。不過(guò)別因?yàn)樵季托∏闪怂琈FC比傳統(tǒng)的Windows SDK開(kāi)發(fā)方式還是要前進(jìn)了一大步的,因?yàn)椴还茉趺凑f(shuō),它總算沾了面向?qū)ο蟮囊稽c(diǎn)邊,有那么一點(diǎn)點(diǎn)面向?qū)ο蟮囊馑剂耍热缫粋(gè)窗口,會(huì)被封裝成CWnd類,里面有創(chuàng)建窗口的成員函數(shù),窗口繪制的函數(shù)也被封裝了進(jìn)去,CWnd又會(huì)有其它的窗口派生類,比如CView啊CFrameWnd以及各類窗口控件。學(xué)了MFC,你就基本上對(duì)Windows C++開(kāi)發(fā)入門(mén)了,換而言之,如果你學(xué)的還算過(guò)關(guān)的話,應(yīng)該能在市場(chǎng)上淘到一份關(guān)于Windows C++開(kāi)發(fā)的工作了。其實(shí)現(xiàn)在很多公司還在使用MFC這個(gè)老黃牛,雖然MFC跟現(xiàn)在流行的界面庫(kù)的易用程度比實(shí)在是差的太遠(yuǎn),但是MFC的界面效率高,細(xì)節(jié)操控豐富這仍然是不爭(zhēng)的事實(shí)。

在這個(gè)階段上,你可以做一些簡(jiǎn)單的稍微上得了臺(tái)面的程序了,比如開(kāi)發(fā)一個(gè)基于IE內(nèi)核的瀏覽器,之所以我讓你開(kāi)發(fā)這個(gè)程序,是因?yàn)殚_(kāi)發(fā)IE相關(guān)的程序能學(xué)到很多跟COM有關(guān)的知識(shí),COM也同樣是Windows客戶端開(kāi)發(fā)人員的必備技能,它的生命力跟MFC一樣的頑強(qiáng),甚至有過(guò)之而無(wú)不及。

這個(gè)階段上,如果你對(duì)MFC足夠熟悉了,還可以接觸一下WTL這個(gè)輕量級(jí)的模板界面庫(kù),其實(shí)如果有了MFC的基礎(chǔ),WTL的學(xué)習(xí)過(guò)程是很愉快的,很多MFC中的概念,比如消息映射,在WTL中都有對(duì)應(yīng)的東西,WTL更小巧,封裝的更高端(模板庫(kù)嘛),但是微軟官方不支持,所以不像MFC在MSDN上有專門(mén)的文檔。最重要的是,WTL和ATL可以結(jié)合的非常好,這樣就使得在WTL上調(diào)用ATL寫(xiě)的COM組件或是在ATL寫(xiě)的COM組件中調(diào)用WTL的窗口變的簡(jiǎn)單輕松,所以,以我現(xiàn)在的脾氣,是更加推薦大家使用WTL而非MFC的,但是毫無(wú)疑問(wèn)的,WTL的學(xué)習(xí)成本更高,所以仁者見(jiàn)仁智者見(jiàn)智啦。

接下來(lái)就該學(xué)習(xí)COM了,學(xué)習(xí)COM嘛,幾本關(guān)于COM的基礎(chǔ)理論書(shū)籍還是要看的,比如《COM技術(shù)內(nèi)幕》這個(gè)本書(shū)我比較推薦,比較淺顯,適合COM的初學(xué)者,另外潘愛(ài)民的《COM原理與應(yīng)用》我也看過(guò),馬馬虎虎也還算過(guò)得去吧,雖然感覺(jué)還是前面那本更好一點(diǎn)。至于那本神乎其神的《COM本質(zhì)論》,我覺(jué)得不看也罷,那本書(shū)初看的時(shí)候沒(méi)看幾頁(yè)就走神,實(shí)在是晦澀,,素我直言,《COM本質(zhì)論》這本書(shū),如果你沒(méi)有好的C++基礎(chǔ)還是別看了,純粹給自己添堵。

等到有了COM的基礎(chǔ)概念了,就可以看看《深入解析ATL》,ATL就是用來(lái)寫(xiě)COM的,雖然它也封裝了一些窗口,控件,不過(guò)這本書(shū)稍微寫(xiě)的深了一點(diǎn),大段的代碼剖析,初學(xué)者看起來(lái)還是有難度的,我當(dāng)初很多地方都是強(qiáng)迫自己看完的,看完了后,收獲還是不小的。

在你有了一定的Windows程序開(kāi)發(fā)經(jīng)驗(yàn)之后,可以看《Windows核心編程》,這本書(shū)講的都是關(guān)于Windows內(nèi)核方面的東西,比如進(jìn)程啦,內(nèi)核對(duì)象啦,線程啦,DLL啦,SEH啦,總之我的看法,這本書(shū)與《windows程序設(shè)計(jì)》遙相呼應(yīng),彌補(bǔ)了前者的不足,大篇幅的講述了Kernel32.dll里面的函數(shù),這本書(shū)很多內(nèi)容我都通讀了好幾遍,某個(gè)國(guó)內(nèi)排名前三的互聯(lián)網(wǎng)公司面試,面試官的很多問(wèn)題都是這本書(shū)里的東西,所以強(qiáng)烈建議大家把這本書(shū)好好學(xué)習(xí)一下。

總結(jié)了一下,看書(shū)是很重要的,但是不要忘了寫(xiě)代碼,我得感覺(jué),看書(shū)的時(shí)間和寫(xiě)代碼的時(shí)間在三七開(kāi)是比較好的,戰(zhàn)爭(zhēng)中學(xué)習(xí)戰(zhàn)爭(zhēng),實(shí)踐出真知,這才是最重要的。


  本文關(guān)鍵詞:windows程序設(shè)計(jì),由筆耕文化傳播整理發(fā)布。



本文編號(hào):185017

資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/wenshubaike/xxkj/185017.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶1a006***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com