青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 51,  comments - 24,  trackbacks - 0

                                                                                                                簡(jiǎn)述C和C++的學(xué)習(xí)歷程

  
1、可以考慮先學(xué)習(xí)C.

  大多數(shù)時(shí)候,我們學(xué)習(xí)語(yǔ)言的目的,不是為了成為一個(gè)語(yǔ)言專家,而是希望成為一個(gè)解決問(wèn)題的專家。做一個(gè)有用的程序員,做一個(gè)賺錢的程序員。我們的價(jià)值,將體現(xiàn)在客戶價(jià)值上,而不是語(yǔ)言寫得好不好看。


  C++是C的一個(gè)面向?qū)ο蟮慕忉專珻++為C擴(kuò)充了大規(guī)模工程應(yīng)用,復(fù)雜的系統(tǒng)結(jié)構(gòu)的組織和掌控方法,但是,我認(rèn)為,C++骨子里還是C的。

  畢竟,解決具體問(wèn)題,每個(gè)函數(shù)內(nèi)部,都是用C的方式寫程序,還是面向過(guò)程的。

  因此,想要學(xué)習(xí)好C++,我的建議,先學(xué)習(xí)C,先學(xué)解決問(wèn)題的能力,再討論解決大問(wèn)題的能力。就是先學(xué)習(xí)怎么走路,再學(xué)習(xí)怎么跑步。

  2、學(xué)習(xí)C的過(guò)程中,一定要理解結(jié)構(gòu)化編程思維。

  為什么呢,我前面有文章說(shuō)過(guò),軟件語(yǔ)言的發(fā)展過(guò)程,就是一個(gè)數(shù)據(jù)私有化的過(guò)程,大型工程應(yīng)用,強(qiáng)調(diào)高內(nèi)聚,低耦合,模塊化設(shè)計(jì),保持代碼最大的靈活性和安全性。

  這是現(xiàn)代工程化開(kāi)發(fā)的核心和靈魂。

  因此,利用C這門語(yǔ)言入門,借此理解結(jié)構(gòu)化開(kāi)發(fā)思維,可以說(shuō)是個(gè)很方便的路子。因?yàn)镃的函數(shù),本來(lái)就是為重用做準(zhǔn)備的。同時(shí),全局變量和cpp內(nèi)部私有變量的差別,其使用原則,這些都能學(xué)到很多結(jié)構(gòu)化開(kāi)發(fā)思維。

  3、開(kāi)始學(xué)習(xí)C++

  C++不難學(xué)的,很多人覺(jué)得C++難學(xué),其實(shí)是因?yàn)樗贑之外,又提供了很多的概念,尤其是對(duì)象,很難以理解。

  不過(guò)我經(jīng)過(guò)這么多年,把這個(gè)問(wèn)題反而看淡了,我認(rèn)為面向?qū)ο笙鄬?duì)面向過(guò)程,僅僅是結(jié)構(gòu)化程序設(shè)計(jì)的一個(gè)具體體現(xiàn),是編譯器提供手段,強(qiáng)迫程序員必須遵循數(shù)據(jù)私有化的一個(gè)實(shí)例,C++和C的關(guān)系,最核心的莫過(guò)于此。

  現(xiàn)在我們回到C再看看,如果我們把一個(gè)全局變量,寫到一個(gè)cpp里面,并且在對(duì)應(yīng)的h文件中不聲明,它是不是就只有這個(gè)模塊可以使用?它是不是就是私有變量,以這個(gè)理解,類能明白了嗎?

  4、學(xué)習(xí)C++的深入技巧

  C++在類的基礎(chǔ)上,經(jīng)過(guò)這么多年的發(fā)展,其實(shí)提供了很多深入的概念,看起來(lái)很復(fù)雜,其實(shí)我看也很簡(jiǎn)單。比如模板,我的理解就是“類的類”,大家說(shuō)是不是?

  既然模板理解了,STL,ATL這些,靜態(tài)模板庫(kù),動(dòng)態(tài)模板庫(kù),還難理解嗎?就是一大堆類的類,可以借此實(shí)現(xiàn)很多應(yīng)用中需要的類,不需要程序員再自己寫而已。

  ok,STL都理解了,泛型開(kāi)發(fā)還難嗎?所謂泛型開(kāi)發(fā),其實(shí)就是我做一個(gè)模板,來(lái)定義一套算法規(guī)則,但是呢,我希望這個(gè)算法規(guī)則,能進(jìn)一步抽象,對(duì)核心數(shù)據(jù)類型不要限死,我把各種數(shù)據(jù)套進(jìn)去,都可以用,這樣,僅算法這部分,我不需要重寫了。你想想是不是這個(gè)道理?

  學(xué)到這里,C++和C,其實(shí)已經(jīng)差不多了。再學(xué)語(yǔ)言,就是求全責(zé)備,過(guò)于鉆牛角尖了。

  5、學(xué)習(xí)應(yīng)用開(kāi)發(fā)

  前面說(shuō)了,學(xué)習(xí)語(yǔ)言,目的不是讓別人認(rèn)為自己是專家,是為了寫程序賺錢。因此,語(yǔ)言學(xué)完,要學(xué)習(xí)應(yīng)用開(kāi)發(fā)。

  什么叫應(yīng)用開(kāi)發(fā)呢,我會(huì)一門語(yǔ)言,但是,客戶不懂,客戶說(shuō)的很直接,在Windows下給我寫個(gè)程序,我要什么什么功能。為啥Windows呢?因?yàn)槲伊?xí)慣。

  OK,很多時(shí)候,應(yīng)用開(kāi)發(fā)要尊重客戶習(xí)慣,一般說(shuō)來(lái),語(yǔ)言這個(gè)東東,還是要結(jié)合具體平臺(tái)的開(kāi)發(fā),才能開(kāi)發(fā)出有意義的應(yīng)用程序賣錢。那么,一般說(shuō)來(lái),客戶端是Windows系統(tǒng),服務(wù)器是Linux,這些都是行業(yè)習(xí)慣,嵌入式不好說(shuō),各種平臺(tái)都有,Palm,S60,Linux,WinCE,等等。要根據(jù)自己的目標(biāo)客戶來(lái)定。

  當(dāng)我們選定目標(biāo)平臺(tái)后,有一個(gè)問(wèn)題,選什么語(yǔ)言,很多時(shí)候,學(xué)生和商用程序員差別就在這里,學(xué)生一般沒(méi)得選,自己會(huì)啥就用啥唄,企業(yè)里的程序員不會(huì),要先評(píng)估需求,看哪個(gè)語(yǔ)言更合適,不會(huì)的語(yǔ)言,要去學(xué)。

  ok,假定我們選了C和C++,那么,我們需要選擇開(kāi)發(fā)平臺(tái),Windows下不用說(shuō)了,VC,這是最好用的,Linux下呢,gcc,其他的也差不多。

  假如我們開(kāi)發(fā)VC,并且使用C++,這個(gè)時(shí)候,才需要考慮學(xué)習(xí)MFC了,因?yàn)檫@是微軟的標(biāo)準(zhǔn)類庫(kù),至少Windows平臺(tái)下,它最權(quán)威,你看見(jiàn)沒(méi)有,我們從學(xué)習(xí)開(kāi)始,走了多少步,才走到MFC?是不是MFC不是學(xué)習(xí)C++上來(lái)就必須學(xué)的?

  6、學(xué)習(xí)MFC

  學(xué)習(xí)MFC,很多人一上來(lái)就開(kāi)始看其體系架構(gòu),看得一頭霧水,那個(gè)模塊關(guān)系依賴圖,我到現(xiàn)在都看不懂。 呵呵,其實(shí)不是啦,和學(xué)語(yǔ)言一樣,我們學(xué)MFC的目的,也不是希望成為MFC的專家,而是要利用MFC開(kāi)發(fā)Windows應(yīng)用程序,為我們賺錢。看見(jiàn)沒(méi)?MFC是手段,不是目的,目的是開(kāi)發(fā)Windows程序。

  其實(shí)Windows下,有一套很標(biāo)準(zhǔn)的C接口,叫Win32API,這個(gè)才是Windows的標(biāo)準(zhǔn)編程核心,因此,學(xué)習(xí)MFC,真實(shí)的目的是理解Windows程序開(kāi)發(fā),建議可以先學(xué)習(xí)Win32API,看來(lái)我們又回到C了哈,呵呵。剛開(kāi)始學(xué)C有用吧?

  7、Win32API

  其實(shí)Win32APi不難學(xué)的,因?yàn)殡m然它很大,有很多接口,但不是必須的,我們真正做個(gè)簡(jiǎn)單的Windows應(yīng)用,其實(shí)用不到這么多的。做個(gè)簡(jiǎn)單的Dialog,然后實(shí)現(xiàn)個(gè)功能,你遇到的接口函數(shù),其實(shí)絕大多數(shù),就是以后常用的了。把常用的記熟練,就ok了。

  關(guān)鍵是,這個(gè)時(shí)候要通過(guò)WinMain方式,去理解Windows的事件機(jī)制,這是核心,其實(shí)說(shuō)起來(lái)簡(jiǎn)單得要死。就是以前你的程序,由于沒(méi)有系統(tǒng)支撐,很多事必須自己做,比如檢查鼠標(biāo)和鍵盤輸入,你需要寫個(gè)死循環(huán),自己不斷去看,而Windows說(shuō),這些事你不要做了,我來(lái)做比你好。你沒(méi)事就玩去吧,我把和你相關(guān)的消息放到一個(gè)隊(duì)列里,就是你的事件隊(duì)列,你自己沒(méi)事去找找看,有沒(méi)有新消息來(lái),有就做事,沒(méi)事就玩好了。很簡(jiǎn)單是不?

  當(dāng)然,Windows是多任務(wù)操作系統(tǒng),有時(shí)候,我們的邏輯需要并發(fā)一些功能,比如說(shuō),我在等鼠標(biāo)鍵盤消息的時(shí)候,需要再看看打印機(jī)準(zhǔn)備好了沒(méi)有,這里就需要理解并行計(jì)算了,這和語(yǔ)言無(wú)關(guān),和操作系統(tǒng)無(wú)關(guān),這是另外一個(gè)話題,這里不多說(shuō)了,你可以自己找找線程開(kāi)發(fā)的相關(guān)資料看。

  看見(jiàn)沒(méi),為了學(xué)習(xí)好Windows編程,其實(shí)我們不僅僅需要學(xué)習(xí)語(yǔ)言,還要學(xué)習(xí)操作系統(tǒng),并行計(jì)算原理,內(nèi)存原理,可能有時(shí)候還需要學(xué)習(xí)網(wǎng)絡(luò)通信,等很多知識(shí),所以說(shuō),單憑學(xué)習(xí)語(yǔ)言,是成不了商用程序員的,一個(gè)合格的程序員,需要理解的東西,太多了,要廣為學(xué)習(xí)。

  當(dāng)我們把Win32API,以及基本的窗口化程序設(shè)計(jì)理解了,就可以回到MFC繼續(xù)學(xué)習(xí)了。是不是有點(diǎn)遞歸返回的意思?呵呵。

  8、回到MFC

  原來(lái)學(xué)MFC很難的,因?yàn)槠浞庋b了太多細(xì)節(jié),很難理解透徹。不過(guò)還好,我們有侯老師的深入淺出MFC,去找本來(lái)看看,如何從Win32API的純C編程,改變?yōu)镸FC的C++方式,看這個(gè)最快,基本上前6章看完,已經(jīng)會(huì)了,這里我就不多說(shuō)了。

  9、COM

  COM、COM、COM,我最頭疼的COM,呵呵。

  COM就是一種遠(yuǎn)程過(guò)程調(diào)用,即你請(qǐng)求的代碼是在另外一個(gè)進(jìn)程中運(yùn)行的,通過(guò)某種通信協(xié)議來(lái)回傳遞參數(shù)和結(jié)果。僅此而已。DCOM進(jìn)了一步,服務(wù)者可以在另外一臺(tái)計(jì)算機(jī)上。在公司開(kāi)發(fā)中,大家可能各做一塊,如果要合作,Windows下建議多使用COM.(我個(gè)人喜歡socket通信哈)

  簡(jiǎn)單說(shuō),COM提供了一種機(jī)制,可以跨進(jìn)程通信,甚至跨機(jī)器通信。不過(guò),為了傳遞各種類型的參數(shù),COM可謂是無(wú)所不用其極,它發(fā)明了智能指針,可以指向任何類型的數(shù)據(jù),同時(shí),為了實(shí)現(xiàn)智能指針,它使用了大量的C++泛型設(shè)計(jì),看見(jiàn)沒(méi),C++的基本功就起作用了,還用到了ATL.

  學(xué)習(xí)COM,要注意一個(gè)接口的概念。由于開(kāi)發(fā)者是不同的人,調(diào)用程序和服務(wù)程序,可能不是同一種語(yǔ)言,OK,不能簡(jiǎn)單提供一個(gè)C或C++的。h文件來(lái)解答接口,因此,COM提供了標(biāo)準(zhǔn)接口,使用者在程序內(nèi)部,以查詢方式獲得可用接口,進(jìn)而以接口ID調(diào)用。很累人的。

  學(xué)會(huì)了COM,就可以多理解一點(diǎn)ActiveX了,那么再學(xué)習(xí)一點(diǎn)dll(動(dòng)態(tài)鏈接庫(kù))的知識(shí),我們就已經(jīng)可以寫OCX控件了。一般說(shuō)來(lái),OCX控件是個(gè)很好的設(shè)計(jì),哪都能用,一個(gè)軟件的模塊,最理想是開(kāi)發(fā)成這個(gè)樣子,比exe靈活。

  10、沒(méi)了。

  按少林派說(shuō)法,學(xué)了上述這些,其實(shí)已經(jīng)算打過(guò)18銅人陣了,已經(jīng)可以下山助明主,掃奸佞,扭轉(zhuǎn)乾坤,解萬(wàn)民于倒懸了。

  不過(guò),關(guān)鍵是你通過(guò)上面的過(guò)程,是不是已經(jīng)學(xué)會(huì)了學(xué)習(xí)的方法,再遇到新的東東,是不是已經(jīng)不難學(xué)了?這大概就是武學(xué)中的悟性了,有了這個(gè)根基,以后只要慢慢修煉,估計(jì)20年后,可與天下英雄一較短長(zhǎng)了。

   呵呵,你說(shuō)是不是?
  呼呼,好累。

posted on 2009-08-02 00:39 劉之遠(yuǎn) 閱讀(185) 評(píng)論(0)  編輯 收藏 引用

只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


<2009年8月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
303112345

常用鏈接

留言簿(1)

隨筆分類(21)

隨筆檔案(51)

c語(yǔ)言學(xué)習(xí)筆記

搜索

  •  

積分與排名

  • 積分 - 23693
  • 排名 - 745

最新隨筆

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久久久色| 久久深夜福利| 在线不卡亚洲| 国产亚洲第一区| 国产一区二区三区无遮挡| 国产视频一区在线观看一区免费| 国产精品区二区三区日本| 国产精品综合久久久| 国内精品美女在线观看| 亚洲欧洲精品一区二区| 亚洲伦理在线免费看| 亚洲香蕉网站| 久久久蜜桃精品 | 久久人人爽人人爽| 久久久久久夜| 亚洲国产精品成人| 亚洲国产成人av| 在线视频亚洲| 久久精品72免费观看| 欧美精品18+| 国产乱码精品| 亚洲精品在线视频| 久久精品视频免费| 亚洲精选视频在线| 欧美一级播放| 欧美日韩在线视频首页| 极品少妇一区二区| 亚洲一区二区三区四区中文| 久久久久网址| 在线性视频日韩欧美| 久久久久国色av免费观看性色| 欧美激情按摩在线| 国内精品视频一区| 亚洲嫩草精品久久| 亚洲国产精品一区在线观看不卡 | 欧美日韩999| 欧美视频在线观看视频极品| 国产最新精品精品你懂的| av不卡在线| 嫩草国产精品入口| 香蕉久久夜色| 国产精品激情电影| 日韩视频在线观看免费| 久久久久一区二区三区| 亚洲专区欧美专区| 欧美日韩在线影院| 99热这里只有精品8| 美女日韩在线中文字幕| 亚洲欧美日韩在线综合| 欧美午夜在线观看| 宅男噜噜噜66一区二区| 亚洲电影观看| 久久人人九九| 精品成人免费| 久久免费视频一区| 欧美伊人久久久久久久久影院| 国产精品成人在线| 亚洲一区二区在线播放| 日韩亚洲欧美高清| 欧美日韩国产小视频在线观看| 亚洲欧洲日本国产| 欧美激情一区二区三区| 欧美电影在线| 亚洲肉体裸体xxxx137| 亚洲电影免费观看高清| 欧美肥婆在线| 日韩视频精品在线| 亚洲精品自在久久| 欧美性大战xxxxx久久久| 亚洲一区二区三区四区视频| 亚洲性xxxx| 国产情人综合久久777777| 欧美一区二区三区视频| 午夜免费久久久久| 伊人影院久久| 91久久久在线| 国产精品久久久久9999| 久久精品国产免费观看| 久久久久国内| 一区二区久久久久| 亚洲欧美乱综合| 在线日韩一区二区| 亚洲精品一区二区三区婷婷月 | 国产亚洲一区二区在线观看 | 蜜臀久久99精品久久久画质超高清| 91久久精品美女高潮| 亚洲欧洲精品一区二区精品久久久| 欧美日韩国产三级| 久久青草欧美一区二区三区| 免费亚洲电影在线| 午夜精品久久久久久99热软件| 在线视频中文亚洲| 免费一级欧美片在线观看| 国产日韩欧美在线播放不卡| 亚洲影院在线| 欧美阿v一级看视频| 日韩视频一区二区三区在线播放免费观看| 久久天堂av综合合色| 免费在线日韩av| 亚洲图片欧洲图片av| 国产一区二区三区成人欧美日韩在线观看 | 久久精品99久久香蕉国产色戒| 小黄鸭精品aⅴ导航网站入口| 国产精品视频久久一区| 久久精品在线| 亚洲一区二区视频在线| 另类天堂av| 久久精品免费电影| 亚洲一区国产视频| 欧美激情第10页| 亚洲综合国产| 国产女主播在线一区二区| 久久裸体艺术| 性欧美长视频| 在线一区亚洲| 亚洲网站在线播放| 日韩亚洲欧美在线观看| 亚洲国产成人av在线| 久久蜜臀精品av| 久久久91精品国产一区二区三区| 中文国产成人精品久久一| 亚洲激情视频在线播放| 亚洲日本va午夜在线影院| 亚洲激情在线| 一区二区三区色| 久久一区视频| 久热精品视频在线免费观看| 午夜精品影院在线观看| 欧美一区综合| 久久综合伊人77777蜜臀| 欧美大色视频| 国产精品久久久久7777婷婷| 国产老肥熟一区二区三区| 国产麻豆一精品一av一免费| 国产精品专区h在线观看| 激情久久综艺| 亚洲午夜在线观看| 美女精品一区| 中日韩美女免费视频网站在线观看| 日韩一区二区精品| 久久久噜噜噜久久中文字免| 免费视频久久| 1204国产成人精品视频| 欧美久久久久久久久| 欧美日韩亚洲视频| 精品动漫3d一区二区三区| 亚洲午夜av电影| 欧美.日韩.国产.一区.二区| 一区二区三区不卡视频在线观看 | 亚洲一区二区三区乱码aⅴ| 欧美一区在线视频| 99精品热6080yy久久| 欧美成人精品激情在线观看| 狠狠狠色丁香婷婷综合激情| 亚洲深夜福利| 亚洲区免费影片| 欧美成人中文字幕| 亚洲国产精品va在线观看黑人| 久久亚洲一区二区| 久久久久九九视频| 亚洲第一精品电影| 欧美电影免费| 欧美成人午夜激情| 99精品国产一区二区青青牛奶| 欧美激情第9页| 欧美视频三区在线播放| 欧美一级免费视频| 国产精品久久久久久久久久妞妞 | 国产精品高潮在线| 午夜亚洲视频| 欧美一区永久视频免费观看| 国内精品亚洲| 亚洲精品午夜| 欧美日韩国产小视频在线观看| 欧美日韩视频在线一区二区 | 亚洲综合色噜噜狠狠| 亚洲一区二区三区视频| 国产一区二区在线观看免费播放| 久久亚洲国产精品日日av夜夜| 久久精品国产一区二区三 | 蜜桃av一区| 亚洲欧美另类综合偷拍| 亚洲欧美日韩在线播放| 欧美一区二区日韩一区二区| 欧美有码视频| 亚洲欧美电影在线观看| 麻豆精品传媒视频| 久久国产精品99久久久久久老狼| 蜜臀av在线播放一区二区三区| 久久av红桃一区二区小说| 欧美日韩视频免费播放| 亚洲国产精品一区二区三区| 国产精品久久精品日日| 亚洲韩国日本中文字幕| 亚洲福利久久| 蜜桃av综合| 亚洲精品视频在线观看免费| 日韩视频第一页| 欧美片在线播放| 亚洲精品欧美极品|