我的C++學習印象
講故事是件很好玩的事,尤其放到自己身上,帶點扯犢子的功夫,來個幾個小時依舊可有萬般言語。最近,有個別小夥伴欲入門CAA開發,或許苦於C++基礎薄弱,而有諸多的顧慮。我不敢說自己C++多牛逼(O(∩_∩)O哈哈~),但實現個CAA個功能還是夠的,因此,拋磚引玉講講我的C++學習印象,希望對大家有所借鑒。
我不是計算機科班出身,也相信從事CAA開發99%的諸位也非科班。可能有部分人比較幸運,上學期間短暫上過C++的課程,也可能有很多如我這樣,CAA前沒寫過個Hello world。但是,今天回顧,我認為第一階段知道數據類型、控制結構、函數、指針、簡單類應用,便可滿足大部分功能要求,後續可以繼續學習類繼承與派生、多態、重載、數據結構,就可以昂首進軍CAA開發行業了。當然,我沒按照上述步驟學習,下述是我的漫天論道:
選擇教程始終是個首要問題,我個人喜歡看視頻,學習是無時無刻的事情,因為掏個手機,便見知識的海洋。我看的是東南大學-何潔月老師的視頻(鏈接:https://pan.baidu.com/s/1bo26mOB 密碼:6nbf),此教程總共80個學時,上半部分48,下半部分32個學時,有學時可期,是happy的一件事。如果論及書,吾認為不在多,在於少在於精,我見過抱著本C++編程思想啃的,也見過拿著c++ primer來看的,這兩本書都是很棒的書,但是它更像是一本語法書和詞典。有基礎拿它來補缺解惑是很好的,但是入門略有不適合,它的章節排布會把入門者弄瘋[1][2]。所以,如果要看書的話,拿本大學的C++教程,應該是個不錯的選擇。
我之學習經歷過兩個主要階段,其他都是利用零碎時間:
其一,可能是耐不住性子,我記得當初只學了視頻教程上半部分。按照一天2個學時,三周的時間便粗略風騷。而實踐是檢驗真理的唯一標準,關鍵一定要多多實踐,深刻記憶,不然淪落個看懂不會操作的尷尬。對於學習,我一直提倡趁熱打鐵,學習勁頭上來,擠擠時間就給完成了。至此階段,練習幾個例子應該沒有問題,例子見參考[4]。
其二,選修軟體技術基礎課程,主要是學習數據結構,書籍應該為參考[5],期間、獨立完成了表達式計算、圖和二叉樹、拓撲排序和路徑尋優、快速排序的4個課程任務(挖了幾年沉澱的郵件挖出來的,不容易!!!,源碼見鏈接:https://pan.baidu.com/s/1mhHMWpa 密碼:vxdy),每每完成均頗有成就感。都說程序是演算法加上數據結構,針對CAA開發來說,其功能相對來講邏輯不饒,而學習數據結構對開發的思維是有幫助的。
最後,就是邊用不懂則去查閱,這個時候,C++ Primer或C++編程思想可以派上用場了。summary下,學習關鍵要實踐、自古功成在嘗試~~
參考:
- [點評][東南大學][C++]視頻[何潔月] - CSDN博客
- 如何正確的通過 C++ Primer 學習 C++?
- 怎樣讀《C++ 編程思想》?
- 十分有用的c++實例(非常適合初學者)_百度文庫
- 數據結構與演算法(C語言版) (高等學校計算機科學與技術專業核心課程系列規劃教材)
推薦閱讀:
※快速閱讀:為什麼不對?
※老J專欄(089)為啥流行假裝學習?
※如何入門人文,倫理學?
※高四狗應該怎麼不顧一切的努力?
※如何讓你的思維鋒利如刀?