计算机专业需要掌握的知识和技术
個人總結,計算機專業從業者,尤其是工程師,需要掌握以下知識和技術:
1. 多多益善的數學功底
毋庸置疑,邏輯思維的基礎,可能某些人天生適合邏輯思維,但是經過長時間的數學思維鍛煉,邏輯思維一定是底子很好的!
要求程度: 第一階段是夠用,接下來是越充實越好!
如何訓練:不要刻意去看書,去重新學習數學課本,方法是算法驅動,也就是看算法需要的時候再去看對應的數學知識.
2. 專業的英文閱讀能力
當需要研究國外的芯片數據手冊或者相關文檔或者標準時候,專業的英文閱讀能力是相當重要的。這個不必多說!
要求程度: 第一階段還是夠用,當然也是越多越好!
如何訓練:多看、多聽,多看包括英文網站,英文文檔,多看就是電影咯,這個簡單。
3. 計算機相關原理
方面很多,例如:計算機的計算模型,cpu、內存、硬盤之間的關系,機器指令、匯編、高級語言的關系,函數調用的原理,c++對象結構,進程調度原理,內存分頁原理,內存管理,編譯器原理,虛擬機原理,程序加載原理,解釋器原理,面向對象原理,硬件驅動原理,專業術語理解,函數庫原理,編譯連接原理,GUI原理,可視化工具原理...
要求程度:第一階段要知道的寬,接下來就是專!
如何訓練:積累,多學!
4. 相當熟悉一門編譯類語言
不如直接說C語言,不一定非要拿C干什么事情才說要學C,而是通過理解C的方方面面,讓我們對編譯性語言有個整體的把握,基本類型啊,函數過程啊,頭文件包含啊,庫函數實現啊,操作系統調用啊,程序設計基本技巧基礎認識啊...
要求程度:越熟悉越好!
如何訓練:多看關于C的書,多寫實用程序,多看開源代碼!
5. 相當熟悉一門解釋類語言
腳本類語言的高效快捷簡便,是編譯類語言無法比擬的,豐富的庫,自由的特性,眾多的工具,天生的跨平臺性質,讓你在手機上看到運行效果。通過熟悉解釋類語言,充分理解動態語言的實現方法,擴展方法,通過對比編譯類語言,自然能體會語言所提供的諸多特性的來由了!
選擇很多:bash\python\perl\ruby都不錯,其中python就很好,bash在linux上應用最多.
要求程序:越熟練越好!
如何訓練:多看書,多寫程序,多看代碼!
6. 算法(數據結構)
算法以數學為基礎,不過即便沒有數學功底,應付非算法類工作也沒問題,只要掌握了一定的算法基礎即可。但是,可持續的考慮問題,一定要理解算法,理解動機。理解算法背后的內容。
要求程度:越多越好,越深越好!
如何訓練:多做題,多思考,學數學,長時間積累不松懈!
7. 設計模式
這里說的設計模式,可以成為廣義的不是咱們說的設計模式那本書的設計模式,而是凡是規范的,有范式的程序設計方法,都是設計模式。這個沒有辦法通過看書就掌握了,需要動手實踐.
要求程度:越多越好!
如何訓練:多看書,多寫程序,多實踐!
8. 整理全面理解大系統
一定要完整的理解一個軟件系統,包括各個方面。推薦熟悉四類系統:
(1)單片機無操作系統,只要簡單無限循環控制的簡單界面的應用,掌握如何對硬件編程,如何點燈等。
(2)單片機多任務操作系統,理解多任務的概念和編程特點,當然還有操作系統的實現,框架,機制,啟動方式等等。
(3)linux操作系統,理解現代操作系統的原理,實現,非常重要。
(4)Android操作系統,理解了Android系統,就理解了需要學到的計算機的大部分知識哦!
9. 自己動手寫這寫那
(1)每天寫代碼->需要的語法也看
(2)每天看算法->需要的數學也看
(3)自己寫一個操作系統->簡單的,五臟俱全的
(4)自己寫一個編譯器->簡單的,能用即可
(5)自己寫一個GUI->簡單的,能看圖片和文件即可
(6)自己寫一個解釋器->簡單的語法即可
10. 多看多寫多思考,貴在堅持
多寫代碼,多動手調試,多想為什么,多看開源代碼,多看書,制定目標,堅持不懈!
本文完.
作者:linucos
出處:http://linucos.cnblogs.com
聲明:因文章引起的任何問題,本博客不負任何責任;版權所有,歡迎轉載
總結
以上是生活随笔為你收集整理的计算机专业需要掌握的知识和技术的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 目标
- 下一篇: 怎样在CentOS 7.0上安装和配置V