0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

我們說說C++程序員成長路上的那點事

工程師人生 ? 來源:網(wǎng)絡(luò)整理 ? 2018-05-15 15:56 ? 次閱讀

過來人結(jié)合自身的體會和大家聊聊,希望新人能少走彎路。每個人的情況不一樣,我下面的描述可能并不適合每一個看到這篇文章的人。

C/C++語言

如果你的基礎(chǔ)很差, 建議不要一開始就學(xué)C++語言,從C開始學(xué)起,對程序有個初步的認識,循序漸進。C語言的書嘛,先買一本 300 頁以內(nèi)的,把書中的每一個例子都通過鍵盤敲打進去到 Visual studio里面去,然后單步執(zhí)行,逐行調(diào)試去看各個變量的值?;蛘咦孕刑砑右恍﹑rintf語句去輸出變量的值。這樣當你看完一本書后, 你就有編寫小程序的感覺了。

記住,千萬不要偷懶,不敲進去,自以為聰明, 能看懂, 或者直接從光盤復(fù)制。偷懶的代價是會花費更多的時間學(xué)習,最后還沒有學(xué)會,給自己的自信心造成巨大打擊,再也不想學(xué)程序了。
C語言看完一本書后,下來你就可以買一本C++的書看了。 C++的書也是一樣, 必須300頁以內(nèi)的那種,不要一來就想學(xué)《C++ Primer中文版》這樣的好書, 因為太厚了,怕你沒有信心能夠看完,即使你很有信心,花費一年的時間才看完,不值得。這種經(jīng)典的厚的好書, 適合作為資料查閱,不適合挨個細節(jié)都看。

還是要提醒各位,一定要把書中的例子挨個敲打到電腦里面, 單步執(zhí)行。一定不要從光盤復(fù)制, 一定要單步執(zhí)行。
經(jīng)過兩本書的磨練, 估計你對C/C++肯定有比較深入的了解了, 下來應(yīng)該可以進入實戰(zhàn)了。

帶界面的應(yīng)用程序

學(xué)會了C/C++語言本身,可能還沒有什么成就感,畢竟都是控制臺的程序, 老是輸出一串字符串, 整天面對各黑框框,成就感估計不是那么爽。要是能搞個帶UI界面的程序就爽了。
下來就看個人的志向了, 如果走微軟路線, 那你下來學(xué)MFC好了,如果要走開源路線, 那開源跨平臺的界面庫多得是。
通用的并且簡單的就是 wxWidget 了, 官方網(wǎng)站為 。你下載后看具體的例子, 把里面的例子程序敲到你的 visual studio 里面, 去調(diào)試, 看運行的結(jié)果, 你也可以試著去修改例子, 添加按鈕,響應(yīng)按鈕事件等。
走到這一步, 恭喜你,可以照葫蘆畫瓢的搞個小應(yīng)用程序了, 還帶界面。

網(wǎng)絡(luò)應(yīng)用程序

語言搞懂了,UI程序也會了, 下來該學(xué)學(xué)網(wǎng)絡(luò)咯, 現(xiàn)在那個程序不需要聯(lián)網(wǎng)啊,懂網(wǎng)絡(luò)對你理解很多程序非常有幫助。但是網(wǎng)絡(luò)應(yīng)用程序從哪里入手呢 ?
我來告訴你,從《UNIX網(wǎng)絡(luò)編程》這本書入手吧,這本書可以教會你網(wǎng)絡(luò)套接字的底層原理,把上面的例子好好學(xué)習,自己動手寫一個回應(yīng)服務(wù)器。寫一個服務(wù)器端,在寫一個客戶端。服務(wù)器端請務(wù)必學(xué)會 select 這個簡單的多路復(fù)用模型,這樣你才能慢慢的深入里面 poll , epoll ,IOCP 之類的模型。

文件操作

所有的程序,基本都會用到文件的讀寫操作,windows系統(tǒng)有自己的文件操作API, 比如CreateFile, DeleteFile 等,請新手不要學(xué)windows的文件操作API, 新手請學(xué)標準C語言的文件操作函數(shù),簡單易學(xué)還跨平臺。就那么幾個函數(shù),三下五除二你也就學(xué)會了, fopen, fclose, fread , fwrite, fseek, ftell 就這么幾個而已。

深刻理解內(nèi)存與指針的關(guān)系

作為一個C/C++程序員, 從學(xué)習程序的頭一天開始,就要和內(nèi)存的分配釋放作斗爭。你必須理解內(nèi)存與指針的關(guān)系。怎么樣才能理解呢, 請大家去看 《高質(zhì)量C/C++編程》里面自帶的幾個經(jīng)典例子吧。把那幾個例子搞得清清楚楚, 基本能夠理解其中的原理了。

我們說說C++程序員成長路上的那點事


仔細研究apache源碼

學(xué)程序非特別是C/C++程序,非3年之功可以出山,三年對一個C/C++程序來說是一個從量變到質(zhì)變的過程,三年的項目實戰(zhàn)經(jīng)驗,可以讓你接觸到一個完整的應(yīng)用程序所需要具備的骨架。但是這個階段你寫的代碼,可能充滿BUG, 會宕機,運行效率很差,自己回頭看看一年前寫的代碼,可能自己都感覺惡心, 看不下去。沒有關(guān)系,這種感覺是每一個進步青年都會有的。要提高自己的代碼水平, 還是要像高手學(xué)習。你可能要問,公司同事的水平一般, 水平好的人家也不愿意給我講。沒有關(guān)系,開源的代碼就是你像高手學(xué)習的最佳途徑,開源代碼是高手留下的練功秘訣, 你看了后你會突然感覺茅塞頓開, 感覺自己的水平差人家太遠了。我為何要推薦apache的源碼呢?

apache的源碼是高手中的高手寫的,執(zhí)行效率和程序架構(gòu)堪稱一絕。里面的很多思想是所有程序都通用的,搞懂了, 很多模塊你也可以直接拿來使用。apache對內(nèi)存池的使用, 對線程池的使用, 對模塊結(jié)構(gòu)的封裝,非常具有實際意義。要是你能把apache的源碼吃個透徹,每一個細節(jié)都搞明白了為何人家要這么實現(xiàn),我可以給你說,“恭喜你 , 你離傳說中的高手已經(jīng)不遠了?!?br />
修煉C++

我上面說的基本都是修煉C的, 要修煉C++, 還得再花3年功夫, 才有可能練成C++高手。C++太博大精深了,其中最復(fù)雜的莫過于泛型編程思想,不要以為能寫個模板類就認為泛型編程不過如此而已。仔細看看STL源碼, Boost 源碼, 你就知道泛型編程有多么的博大精深了。修煉C++, 可以從用C++封裝的MFC,wxWidget入手, 看高手如何通過C++語言, 封裝這樣龐大的UI庫,里面應(yīng)用了很多的C++機制, 最典型的就是多態(tài)機制, 還有很多的設(shè)計模式應(yīng)用可以研究。

深研設(shè)計模式

設(shè)計模式是程序設(shè)計的靈魂,是通用方法,當你面對一個大型項目的時候,如何設(shè)計一個有彈性的系統(tǒng),是所有系統(tǒng)分析員應(yīng)該掌握的技能。在設(shè)計模式的研究上,要結(jié)合實際的項目進行。更多嵌入式學(xué)習,歡迎咨詢余工Q 二八五九七八零二零三

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7612

    瀏覽量

    137238
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    953

    瀏覽量

    29825
收藏 人收藏

    評論

    相關(guān)推薦

    從Delphi、C++ Builder和Lazarus連接到Oracle數(shù)據(jù)庫

    幫助程序員開發(fā)更快、更原生的 Oracle 數(shù)據(jù)庫應(yīng)用程序。 ODAC 是一種高性能且功能豐富的 Oracle 連接解決方案,是 Borland 數(shù)據(jù)庫引擎 (BDE) 和標準 dbExpress 驅(qū)動程序的高效替代方案。它提供
    的頭像 發(fā)表于 01-15 10:01 ?48次閱讀

    TMS320C6000程序員指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000程序員指南.pdf》資料免費下載
    發(fā)表于 12-24 17:19 ?0次下載
    TMS320<b class='flag-5'>C</b>6000<b class='flag-5'>程序員</b>指南

    TMS320C55x DSP CPU程序員參考補充

    電子發(fā)燒友網(wǎng)站提供《TMS320C55x DSP CPU程序員參考補充.pdf》資料免費下載
    發(fā)表于 12-21 11:36 ?0次下載
    TMS320<b class='flag-5'>C</b>55x DSP CPU<b class='flag-5'>程序員</b>參考補充

    UCD3138A64/UCD3138128程序員手冊

    電子發(fā)燒友網(wǎng)站提供《UCD3138A64/UCD3138128程序員手冊.pdf》資料免費下載
    發(fā)表于 12-09 14:42 ?0次下載
    UCD3138A64/UCD3138128<b class='flag-5'>程序員</b>手冊

    機械革命發(fā)布CODE AI程序員

    近日,英特爾新質(zhì)生產(chǎn)力技術(shù)生態(tài)大會在成都舉行,機械革命作為重要參展商帶來了多款明星產(chǎn)品引爆全場!其中更是在AI PC軟件生態(tài)產(chǎn)品發(fā)布分論壇上,Intel、智譜、機械革命三方聯(lián)合發(fā)布了專為程序員設(shè)計的CODE AI程序員本,成為本次大會的一大亮點。
    的頭像 發(fā)表于 11-30 10:34 ?458次閱讀

    Linux驅(qū)動程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動程序程序員指南.pdf》資料免費下載
    發(fā)表于 11-22 15:53 ?0次下載
    Linux驅(qū)動<b class='flag-5'>程序</b><b class='flag-5'>程序員</b>指南

    AI編程工具會不會搶程序員飯碗

    AI編程工具可輔助編程,減少手動編碼,提升效率,對程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識應(yīng)對。長遠看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?199次閱讀

    第五屆長沙·中國1024程序員節(jié)開幕

    據(jù)官方媒體報道,10月24日;? 第五屆長沙·中國1024程序員節(jié)在湖南湘江新區(qū)開幕;本次中國1024程序員節(jié)以“智能應(yīng)用新生態(tài)”為主題。設(shè)置有岳麓對話、技術(shù)英雄會、主題峰會及賽事、展覽等活動,一場
    的頭像 發(fā)表于 10-25 15:42 ?219次閱讀

    程序員節(jié)視頻創(chuàng)意大賽,用串口屏贏取千元大獎

    10月24日,程序員專屬的節(jié)日里,我們盛大開啟“程序員節(jié)視頻創(chuàng)意大賽”特別活動!這不僅是一場視覺的盛宴,更是智慧與創(chuàng)意的璀璨碰撞。我們誠摯邀請每一位
    的頭像 發(fā)表于 07-08 10:38 ?72次閱讀
    <b class='flag-5'>程序員</b>節(jié)視頻創(chuàng)意大賽,用串口屏贏取千元大獎

    程序員節(jié)視頻創(chuàng)意盛宴,邀您共襄盛舉!

    10月24日,程序員專屬的節(jié)日里,我們盛大開啟“程序員節(jié)視頻創(chuàng)意大賽”特別活動!這不僅是一場視覺的盛宴,更是智慧與創(chuàng)意的璀璨碰撞。我們誠摯邀請每一位
    的頭像 發(fā)表于 07-04 09:00 ?67次閱讀
    <b class='flag-5'>程序員</b>節(jié)視頻創(chuàng)意盛宴,邀您共襄盛舉!

    適者生存,程序員最終會流向哪……

    程序員沒有永遠的護城河??!就目前的互聯(lián)網(wǎng)大環(huán)境來看,it行業(yè)已經(jīng)是……
    的頭像 發(fā)表于 03-11 17:11 ?423次閱讀
    適者生存,<b class='flag-5'>程序員</b>最終會流向哪……

    薪資高、青春飯,是不是程序員=青樓?

    進入裁員階段。所以我們程序員要做的只能是與時俱進。 適者生存,程序員亦是如此 順應(yīng)時代發(fā)展,是我們必須跟緊的。就好比技術(shù)更迭我們就要學(xué)習更新
    發(fā)表于 03-06 21:32

    瑞薩Flash程序員V3 發(fā)布說明

    電子發(fā)燒友網(wǎng)站提供《瑞薩Flash程序員V3 發(fā)布說明.pdf》資料免費下載
    發(fā)表于 02-19 09:37 ?1次下載
    瑞薩Flash<b class='flag-5'>程序員</b>V3 發(fā)布說明

    2024程序員的未來方向如何走?還看今朝

    這幾年的IT行業(yè)想必大家已經(jīng)感受到了,Android、Java、前端等等程序員都經(jīng)歷了大廠……
    的頭像 發(fā)表于 02-02 09:45 ?845次閱讀
    2024<b class='flag-5'>程序員</b>的未來方向如何走?還看今朝

    1月18號“純鴻蒙”千帆啟航,程序員預(yù)備!

    的用戶。從而導(dǎo)致Android、ios等市場減少,開發(fā)從業(yè)者會逐漸減少。而我們程序員現(xiàn)在最好的辦法就是進軍“鴻蒙圈”,鴻蒙生態(tài)不僅包括了鴻蒙應(yīng)用層,還有鴻蒙生態(tài)圈:智能家居、車載、家電、數(shù)碼、硬件等等開發(fā)
    發(fā)表于 01-16 22:13