作為計算機專業的,最該學的三門課程
說到計算機專業的小伙伴,提到課程大家都基本上都有一個念頭,課程開的太多了,根本就聽不懂,或者似乎能聽懂點,也是似是而非,到底哪些是重點,那些是可以只是了解下就行。因為根據目前的大學開設的課程所有課程都能搞的很好,幾乎很難,所以還是要抽調出重點,識別出如何進行學習。
那么最該學的是哪三門課程?
計算機組成原理,一門編程語言,數據結構與算法
為啥要學好這三門課程?
一.計算機組成原理,放在第一位,很多人覺得很老套,其實再牛的程序也在運行在計算機上,計算機的工作的原理吃透是第一位的,其實很多寫了很多年代碼的程序員都覺得現在的學生要學習編程還是要把計算機的組成原理搞明白,理解計算機如何存儲,為啥內存大了運行起來更加順暢,CPU原理是什么,內部的原理是啥,其實越是到了大型程序的最好,決定因子還是cpu和內存的問題,舉個簡單的例子,有些程序的執行效率不高,其實隱含的意思就是你的程序太占用cpu的資源了,還有經常說你的程序太吃內存了,因為現代的計算機,無論多牛內存也是有限制的,不停的吞噬內存,不停的內存泄露就會造成系統運行起來,變得慢悠悠的,大家可能覺得有些機器長時間不關機,機器運行的越來越慢,等全部關機重啟一次之后情況會變好多,因為重啟意味你的程序內存全部清零,從頭開始了,開機了內存處于一個比較理想的狀態,當然變慢還有硬件的部分的原因,在這里還是說出來,了解計算機組成原理的重要性。
二.學一門自己比較喜歡的編程語言,在這里不想討論哪種語言孰好孰壞,小編建議學習c/c++/java其中的一種,這也是目前大學校園開課比較多的語言,C語言幾乎是所有語言的鼻祖,也是大學開設課程最多的語言,特別是老譚的C語言程序設計印刷量都破紀錄了,其實在這不提倡用老譚的學習編程,當然是如果為了考級用的話,也就另當別論了。C語言學習的難點在指針這塊因為指針的存在導致不安全性,也導致在指針管理上面難度大了許多,在內存管理都加大了難度,但是一旦學好了,用起來方便許多,有志于架構師方向的還是建議學好C,
(1). C++ 幾乎是面向對象語言里面,語法規定最繁瑣的語種,學起來的難度在這三種語言里面也是最大的,但是是很多技術大牛的最愛,泛型編程玩嗨了,覺得特有意思,而且目前很多的比較牛的軟件底層實現很多都是基于C++的,大家常見的安卓的底層框架,以及瀏覽器的內核框架支架基本上是用c++搭建的,因為在效率和框架設計上C++正好是一個平衡語言。
(2). java是目前國內就業范圍最廣的語言,也是學的最多的語種,就業范圍也是變得無處不在。java是一種學起來容易,很難成為頂級高手的語言,學過java框架的小伙伴,都覺得java的一些開源代碼框架寫的很棒,但是要達到那種級別不是靠年限或者精力能設計出來的,真需要點悟性在其中了。想盡快的就業,學習java是一個不錯的選擇。
三. 數據結構和算法,為什么單獨要單獨拿出來說說,因為很多人都覺得學習編程需要邏輯思維,其實邏輯思維更多是在算法上面體現,基本的算法,其實就是數據結構里面,鏈表,表,二叉樹等的刪除,插入算法,大型的復雜的算法也是在這個基礎上進行延伸,擴展。成為一個合格的程序員,數據結構是必須要掌握的,里面是邏輯思維的集中體現,同時建議剛開始學的小伙伴,先把數據結構基本算法搞定就可以,沒必要刻意為了學習算法而去學。
上述講述了為啥要學好這三門課程,肯定會引來很多的爭議,這是做了多年程序寫一點感受,表達一下內心的感受而已。大學時光,學點東西才是硬道理,荒廢了,豈不可惜。
如果對編程感興趣,想了解更多的編程知識,解決編程問題,以及入門指導,幫你解決編程中遇到的困惑,我們這里有java高手,C++/C高手,/高手,/ios高手,請大家關注微信公眾號:程序員互動聯盟或者