回覆列表
-
1 # 哈皮計算機
-
2 # Python進階學習交流
個人覺得如果想簡單的瞭解一下的話,直接網上搜索個計算機知識簡介的影片教程就可以了。如果想繼續深入的話,基於影片中的所說,找自己感興趣的方向去學習,剛剛開始學習,別讓自己鑽的太深,由表及裡,循序漸進,不然很容易受挫的。
如果想看看計算機基礎的話,可以看看大學生計算機基礎教程,足夠了解計算機整個體系了,剩下的看你自己的興趣了。
如何提高計算機的知識體系,在我看來,可以分為兩部分,即工作之前和工作之後。下面我鋪開來說一下。
工作前,廣度+深度工作前又可以拆分為廣度+深度。
所謂從廣度上提高知識體系,就是指在大學期間儘可能廣泛的接觸計算機領域的內容,打下一個良好的基礎。而打基礎,我認為最重要的就是數學+五大專業課+N門程式語言。
“學好數理化,走遍天下都不怕”。數學被看作是工科和理科最重要的基礎學科,對計算機而言亦是如此,不論是從邏輯思維上提高計算機能力還是從既定的數學知識解決計算機實際問題,數學都是極為重要的。
而五大專業課,通常來講,就是我們常說的《資料結構》、《作業系統》、《計算機組成原理》、《計算機網路》、《編譯原理》。
《資料結構》這門課程是計算機軟體這類專業的必修課,是形成良好的計算機思維的先行課。書中關於二叉樹、圖、排序、選擇、儲存等的演算法不論是以後從事計算機領域的哪一個方向,都具有重要的作用。
例如在大資料方向就有這樣一個案例場景,就是從億級使用者中找到最典型的那個值,比如一個最大的數。那麼就可能是經過分散式伺服器的部署後,採用推排序演算法來取目標值,當然這裡藉助Java或Python等語言來實現。如果沒有《資料結構》,所有的程式設計將會“黯然失色”。
《計算機組成原理》和《作業系統》是講計算機硬體系統結構與內部儲存等方面的學科。學好這兩門課程,將對計算機工作的底層原理理解的很透徹,對後期程式設計過程中儲存最佳化、節省記憶體等方面的實踐具有重要意義。
《計算機網路》顧名思義描述計算機中有關網路的概念和應用。尤其是要學好書中的關於TCP、UDP等部分的描述。在後期海量資料處理過程的時候,不同伺服器的之間資料的傳輸、調配以及網路模型的最佳化都需要這部分知識。同時也是提高計算機知識體系的基礎學科。
《編譯原理》相比較而言,應該是這幾門專業課裡面最難的一門了。裡面的關於文法、自動機等部分的內容雖難以理解,但如果學好了,會對程式碼的編譯過程等十分清楚,也是打底子的一門課程。
N門程式語言指的是,大學期間儘可能接觸多們程式語言。其實計算機類的程式設計語語言,道理都是互通的,學好一門再學別的程式語言就非常快了。當你接觸的語言多了,理解也更深了,也就更容易找到自己喜歡的方向,並不斷髮展提高知識體系。
為什麼說工作前還有可能透過深度層面提高自己的知識體系呢?說的是研究生期間認準某一個領域縱向發展,不斷提高自己在本領域的專業度,縱向提高知識體系。
工作後,深度+廣度工作後提高自己在計算機領域的知識體系,我認為又可以從深度+廣度來說。
其中,深度上來說,是指自己剛參加工作時,做的是計算機領域的某一個方向。或是後端、或是前端亦或是大資料、人工智慧。這其中任一方向都具有極深的知識結構,需要自己在三到五年內沿著自己的方向努力鑽研,同樣加強自己的專業度,縱向提高計算機知識體系。
又說廣度是因為,工作三到五年後,自己在計算機的某一領域做的已經比較熟練,具有豐富的經驗。這個時候,就可以根據自己的興趣,稍微橫向發展,選擇別的方向擴充套件一下,擴大自己的圈子,拓展事業渠道。