如何自學計算機專業課程?
live課程性價比不錯,有興趣能夠看看java
如何避免「程序員吃青春飯」一說?python
怎麼學?linux
- 學習編程語言(c、java、python、JavaScript,必須四個都會)
- 學習數學(高等數學、離散數學、線性代數、機率統計),學完能夠學習基礎課程
- 學習計算機專業核心課程
- 學習計算機專業特定領域課程(人工智能、大數據、圖形學)
如何學習?程序員
- 推薦書:學習之道
- 專一,不要一心多用
- 屢次反覆,切忌覺得一次就能學會
- 培訓禁忌:強行灌入大量知識,難以消化
- 學習高階知識以前要學習預備知識
- 學習須要有目標
- 先實踐再理論,先感性認識再理性認識
- 學習須要DFS,切忌BFS,由樹根到樹葉
- 若是工做在N層,學習的東西重心放在N-1,N+1層,例如作系統開發須要更多瞭解硬件而作web開發只須要簡單瞭解更多須要瞭解瀏覽器原理
如何選擇書籍?web
- 選擇適合本身的書,別被「聖經說」迷惑
- 根據前言或者開頭,判斷本身是否適合這本書
- 最好閱讀最新英文資源或者中英文對照
- 由淺到深-從科普實戰書籍到專業理論書籍
- 多遍閱讀法:第一遍,研讀第一章,後面每章跳着看;第二遍,根據須要和興趣選讀內容;第三遍,看以前沒看過的內容;第四遍,看以前不懂的內容,通讀全書,反思
- 不少工具書只須要第一遍第二遍閱讀便可,重要的經典書籍才須要四遍
- 難書、厚書特色,背景要求高,做者技術牛寫做水平有限。這種書應對方式:須要提早掌握背景知識;多看此類型不一樣書籍對照查看;先看視頻再看書
數學?面試
- 簡單搬磚不須要多深數學知識,可是深刻成爲大牛須要足夠數學知識
- 高等數學,離散數學,線性代數,機率論與數理統計,前二者必學,後二者根據需求選學
- 選擇合適的書,國內不少書理論性強,相比而言國外有些書更優秀。微積分:普林斯頓微積分讀本,離散數學及其應用、線性代數及其應用
- 從易到難學,從科普到教材再到論文
- 學以至用,學完以後立刻使用或者編寫相關軟件
計算機科學?算法
- 樹立計算機系統全局觀-閱讀CSAPP,創建對計算機的總體瞭解,再根據需求瞭解特定領域問題
數據結構與算法?編程
- 有助於公司面試
- 提高編程能力
- 做爲背景知識深刻特定領域(機器學習或者系統開發)
- 瞭解經常使用數據結構和算法,掌握算法好壞的分析方法
- 看完書本身實現一遍,去類庫(jdk)查看開源實現方式,學習優秀思想
- 先學離散數學和一門編程語言,再學科普性書籍,再到《數據結構與算法》,再到《算法》和《算法導論》,《算法導論》的證實能夠選讀
- 不少高級算法掌握會用便可,根據工做需求來選擇是否花時間專研
計算機原理?windows
- 做爲不少高階知識的前置基礎知識
- 《編碼》-> 《計算機組成與設計》(《計算機存儲與外設》和《計算機組成原理》)->《計算機體系結構》
操做系統?瀏覽器
- 數據結構和算法
- 計算機組成原理
- c語言
- 《操做系統-精簡與設計原理》和《深刻理解linux內核》(深刻解析windows操做系統)
計算機網絡?
- 編程語言(c、java、python)
- 操做系統
- 數據結構與算法
- 《計算機網絡教程-自頂向下》、《計算機網絡》、《計算機網絡-系統方法》
- 讀書、寫網絡應用、抓包
其餘問題
- 課程電路,不須要深刻研究,瞭解簡單概念便可
- 語言只是工具,不要專一於語法
歡迎關注本站公眾號,獲取更多信息