一、結緣計算機
我在小學五年級就開始使用計算機,不過那時候的我只能稱得上是玩電腦,算不上用電腦。連簡單的復制、粘貼、剪切等操作都不會,迷迷糊糊玩了幾年游戲。后來高考填志願也是因為喜歡計算機,而且該行業就業前景比較好,所以就填報了該專業。其實進入大學前對計算機一無所知,連最簡單的cmd命令行都沒有接觸過。進入大一后,最開始學的是C語言。那時的我還是“閉關鎖國”,一個人在默默地學,不會利用網上的各種資源。就這樣馬馬虎虎地學了一年,倒也學懂了一些,指針、鏈表、結構體、隊列、樹等都寫過,后來學聰明了,加了個群,開始和外面的人交流學習經驗。直到現在,開始關注公眾號,混跡於各種社區(如CSDN、博客園,Github就談不上了,水平遠遠不夠),還加了個阿里大神的群,隨時會和各種人交流經驗,討論技術問題。這2年來。從對計算機一無所知到現在掌握windows的基本知識和操作,能獨立解決各種問題。我個人還是很喜歡這個行業的,喜歡學習新技術,喜歡搗鼓計算機。擅長的話,也算不上,但也掌握了計算機的一些基本知識,學了不少語言,就是感覺對底層了解不夠,需要多看看。和這些博主比,我至少是科班出身,有系統的課程可以學習,還有各種實踐課,條件還是很不錯的。
二、在計算機系的學習
吐槽的話,我們學校就是個普普通通的二本,沒有很好的學習資源,上課講的東西很淺很淺。就拿大一的指針來說,總共講了不到2節課。(這算是C語言的核心)。實踐作業比較少,手寫作業倒是一大堆,感覺沒什么意義。學軟件需要多實踐,多上機。每周一次上機,之后就沒有什么實踐作業。期末課程設計也有很多人蒙混過去,百度的代碼也能過(PS:要抄襲也去Github溜達溜達嘛)。我所想象的大學應該是:理論課可以少點,很多東西可以讓學生去自學,培養學生的自學能力,畢竟以后去了公司沒人會教你,但是IT行業是不能停止學習的。一旦你停止學習,你就隨時有被辭退的危險,或是只能做個碼農,平庸地生活着(這和搬磚差不多)。老師應該多布置些實踐作業,讓學生多上機操作,培養學生的編程能力。國內的老師教軟件基本都是照本宣科,不能脫離教材去創新,多實踐。可以模仿國外的老師,讓學生分組做項目,學一個知識點解決一個問題,期末的成績加上項目成績,這才是真正的計算機系學生的能力,卷面成績並不能說明一切。國內老師照本宣科,造就了很多高分低能的學生。雖然卷面分數高,但是一寫代碼就卡殼了,沒有書本就不會寫了,更別說解決問題了。至於說為什么國內大學不能像國外大學那樣,這應該是中國教育的通病,從小學到大學都是這樣。中國的家長更加看重學生的分數,而不是實踐能力。他們把分數看得比什么都重要,以助於學校也用考試來衡量一個學生的能力。
要說寫了多少代碼,我還真沒算過。除了學校的課程設計,平時也會寫一些小程序,算起來也有個4k行左右吧。做過比較復雜的系統應該就是一個公交查詢系統(確實如此,不是抄襲其他人的),對於有向圖了解得更加透徹了。因為大一時學得有點迷糊,一直圍着C轉,也不會自己去網上找項目做。大二下期才開始接觸java。所以准備這學期搭建ssm框架,做個項目練練手。
綜上所述;國內老師缺少創新,只會照本宣科,很少結合實踐。(並不是針對我們學校的老師,說的是整個中國的現狀)。對於培訓機構,我是有想法的。現在國內培訓機構叢生,什么北大青鳥、傳智、達內、尚硅谷等培訓機構一大堆,學生往往培訓個半年基本就可以上崗了。他們還讓學生偽造2年經驗,然后用各種面試題一包裝,更有甚者還將學歷造假,企圖騙過面試官。在群里經常看見這樣的人,真的是。。。很無語。他們就會寫代碼,但是自己解決問題的能力很差,遇到問題不會自己去Google,有時一個很簡單的問題都在群里問,譬如下載軟件去哪里下、去哪里找jar包。另外,他們缺少基礎課程的學習,對算法、計算機的基本知識一無所知。有些英語也很差,很簡單的報錯都看不懂。總而言之,國內的培訓機構把整個互聯網行業玩壞了。學習知識是一個循序漸進的過程,不可能速成。而科班出身的學生系統地學習了基礎課程,了解了計算機的基本知識,也掌握了基本的算法以及軟件工程的一些基本知識,對英文文檔的閱讀能力比較強,比培訓機構的學得更系統,更全面。
三、職業規划
說到職業規划的話,我個人想在明年開始在企業實習,將自己所學的應用到公司的實際項目中,鍛煉自己的實踐能力。大概的想法就是先在長沙實習,有了經驗后就去沿海城市找工作。最大的野心就是去杭州Alibaba總部工作(野心是不是太大了)。工作后想開始學習大數據,慢慢轉做大數據。至於36歲之后的事,還沒想過。
准備的話,目前已經學完了Java se和Java web基礎知識以及spring,本學期打算學習下設計模式和算法,接着學完ssm剩余框架,自己做個簡單的ssm 項目,刷刷牛客面試題和算法題,看看各種面試題,准備明年的實習。如果有時間的話,還准備學習下Linux ,畢竟很多Java服務器都部署在Linux系統上。(或許是因為它比windows安全吧)。后面還想研究下 Java 的jvm、多線程、並發。畢竟了解底層對寫程序有幫助。
我個人還是想去企業實習。不僅可以接觸實際的項目,還可以較早地融入社會,了解企業的各種待遇,薪資等等,對以后就業有幫助。至於實習經驗,肯定是很重要的,特別是對應屆生來說。如果沒有任何實習經驗是很難找到工作的。但是也不要急着去企業實習。在掌握了一定的知識和有了一些項目經驗后再去實習會大有裨益。
我想說的就是這么多了。總而言之,學習軟件就是要多實踐,另外要培養自己的自學能力。