階段性總結

這一段時間開不了學,但是卻不能停止學習,大學時間眼看就要結束了,總是感覺什麼都沒有學到,今天借了一點時間做了一些反思和總結,並總結一下接下來要做的事情。眼看就要準備考研了,可是總感覺自己的大學內容還沒有做好收尾和結束。。。

當前的計算機基礎

作爲計算機專業的學生,我認爲計算機科學的思維和素質是最重要的,而不是編程語言。就像對於數學來說數學素養是最重要的,而不是數學習題。在這裏首先區分開了紮實的學科功底和學科工具。

1、還是按照學習的順序,從大一學習的內容開始總結吧。首先不得不說的就是C語言。在我看來,C語言是培養計算機功底最好的工具。但是目前自己的C語言基礎好像就僅僅是大一上半年學習的那點內容,還是日後根據對Java的學習纔對指針有了清楚的理解,仍然不能很好的使用指針。指針和內存分配是C語言最核心的部分,也是透過語言理解底層的大門。自己在這方面很薄弱,希望在以後學習Linux的時候提高一下。從這裏來看,對於我來說,C語言還需要很大的提升

2、高等數學。在我的學校裏,我認爲大一上最重要的兩門課就是高數和C語言。就目前的高數基礎來看,我對自己還是很有信心的。目前用到的較多的是求導和級數,當然積分是概率論的基礎。這個後面再總結。樂觀的是高書裏面基本的計算,自己目前還都能掌握,但對於複雜的計算就會出問題,還是因爲鍛鍊的少。不好的情況是,自己也只是停留在計算的層面,對於高數裏面的核心概念都只是流於表面,沒有深刻的理解。所以這裏需要提升的地方就是對數學基本概念和定理的深刻理解。

3、數據結構。數據結構也有比較樂觀的一面,就是對於基本的數據結構和算法都能用語言表達出來,不太好的一方面是對於堆棧和隊列的理解並不深刻。深知堆棧和隊列對於底層的重要性,所以在這裏深感憂慮。另外還不能快速的寫出查找和排序算法,這也需要鍛鍊。這裏需要提升的地方就是熟練使用堆棧和隊列這樣的數據結構,以及對樹和圖的熟練使用。還有查找和排序算法。

4、數字電路。目前對於數字電路沒有太多的思考,這是一門非常偏硬件的課程。最近通過硬件仿真平臺實現了一些電路結構,理解了組合邏輯和時序邏輯是怎麼用來構建計算機組件的,其他的到沒有什麼思考和總結。

5、線性代數。三板斧之一,個人認爲,線性代數是很多現代工程必須的工具,而且在深度學習,機器學習等方面應用非常廣泛。這也是工程計算的基礎。對這門課的總結是:掌握了基本的矩陣向量計算,矩陣,向量空間的概念。但是應用起來,聯繫這些概念還是非常的彆扭。提升的方向就是:重新學習基本概念,並做相應聯繫,務必熟練掌握這門課程的核心工具。

6、操作系統
7、離散數學
8、數據庫
9、概率論
10、計算機網絡
11、組成原理
12、編譯原理
13*、人工智能。人工智能並不是計算機科學的核心基礎,在這裏只做簡單的總結,並簡單的設計一下將來可能學習的內容,並不一定會學習。
14*、算法設計和分析。算法設計和分析是非常重要的功底,但這裏也只是簡單的總結和設計一下。

現在主要使用的語言

語言只是一種工具,但是語言也反映了工程原則和科學思想。每一個語言裏面無不充斥着滿滿的軟工基本原則和計算機科學的思想方法。我又將每一門語言成爲一個小的計算機科學。

1、Java。java是我使用的最熟練的語言,做過的項目也是最多的。包括web,數據庫,一個簡單的編譯器,簡易聊天系統等。目前我對Java基礎的掌握主要集中在:字符串處理,正則表達式,集合類,多線程,網絡編程,JavaIO,反射機制,JavaWeb。在集合類,正則表達式,常用包等方面已經練習的非常熟悉,計劃下一步看集合類的源碼實現。在多線程、反射機制和網絡編程方面還需要更多的鍛鍊,目前只是做了基本的鍛鍊。在設計模式以及其他的Java高階內容還需要繼續學習,真的是要學習的還太多了。

2、C。c語言在前面已經總結過。以後可以通過使用c語言來實現底層的算法,實現堆棧,實現操作系統的一些邏輯來學習這些內容。

3、Python。目前非常火熱的語言,也許是未來,但是我覺得Java還會在很長的一段時間內佔據主導地位,Python在科學計算方面的強大,使得我們不得不學習Python。目前Python的基礎還是比較薄弱,使用Python做過一些簡單的數據分析,但是對於Python掌握的並不是很好,還沒有熟悉Python常用的工具包,對其數據結構的瞭解還非常的膚淺,下一步的學習就是掌握Python核心基礎。

計劃之後深入瞭解的領域

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章