1. 程式人生 > >我在成為計算機的路上之大學篇

我在成為計算機的路上之大學篇

                                我在成為計算機的路上----大學篇

            大半夜睡不著,思考著自己踏入計算機世界的心路歷程,就爬起來想寫一點東西。(這篇文章不是教你如何去學習計算機,我也是學習路上的一枚小可愛,還有本文涉及的書是該書的大類別不特指某一本書。)

        本人性別‘男’,愛好‘女’,四肢健全,志向高遠。委屈好吧,其實沒什麼理想,起碼三年前沒有。三年前本人經過殘酷的人生大考(高考)失敗的進入一所普通的本科院校,委屈(其實自己覺得自己應該能更好),因為沒有明確的目標就聽從了親友的意見,選擇了親友們認為的能夠掙到錢的計算機方向(快哭了是不是很俗套快哭了),然後成功的被電腦科學與技術專業錄取,記得當初來到學校前我曾對小夥伴們誇下海口,哥們畢業後要在市中心開一家超大型網路會所。(委屈

哈哈,當初真以為學了這個出來就開網咖了!委屈) 

        當然隨著學習深入才發現自己當初真帥鄙視,記得我們大一的那門引領 我們進入計算機世界大門的《計算機思維導論》,當初沒覺得有什麼,想在想來,老師們真的是有大局觀的。這本書涉及知識層面的不太多,但是全書只告訴我們一個思想,那就是換位思考,把你自己當做計算機,然後,你就學完這本書了。當然這本書短短的一兩學期肯定只是自行理解,仁者見仁智者見智,這可是要用一生去追隨的東西。

        然後就是哥們認為除了彙編外最牛逼的計算機語言,我們的c語言的學習啦!(如果有其他語言信仰者,請忽略這句話。怕被打!)為什麼這麼推崇c呢,因為本質通透啊,它可是除了彙編外最接近底層的語言啊,想一想,你使用手裡的指標準確無誤的操作記憶體空間,對任意你想操作的地方加以改造建設,有什麼錯誤透析本質一下子就能找出它的根本原因,有沒有一種上帝視角的感覺。

        當然了我們c作為面向過程的語言肯定有他的很多侷限性,這個時候就特別需要他的老大哥c++出馬了,c++我的理解就是更加牛逼的c,他採取的c的優點,然後自己又做出了昇華,採用 類機制,融入父子宗族概念,接受繼承,採用函式,資料公私分明的制度,建立所謂的變準模板,成功的進化為一門優秀的面性物件語言。

            不管你是將來打算走軟體方向還是硬體方向,這兩門語言都很不錯的!(強烈建議從c到c++的深入學習,當然java ,c#...等語言也都很不錯,可是初學者最好是選擇其中一門深入研究,我就曾經跑偏,學c++還沒到火候又跑去學java,看android,最後又乖乖的回到c++了!)。

                當然這些都只是語言,怎麼使用卻看個人修行,但是我這卻有兩本絕世無雙的武功祕籍,可以讓你修煉成絕世高手。這兩本祕籍就是《計算方法》,《資料結構》,其實在很多高手看來這兩祕籍單獨使用沒有什麼出彩的地方,但是結合起來使用那可真的具有化腐朽為神奇的力量。在我看來資料結構就是教你如何感應自然世界中的真氣,將之變化為你自己的內力,而演算法就是你身體內的七經八脈,它可以讓真氣遊走在你的全身,完成迴圈,終成一代絕世高手。

            資料結構:線性表,棧和佇列,串,多維陣列,廣義表,樹,圖,排序,檔案,動態分配儲存。     演算法:遞推,遞迴,窮舉,貪心,分制,動態規劃,分支限界,迭代,回溯....這些東西真是深入本質而又通俗簡便,我是越來越佩服先輩們的智慧了。

            然後是《數位電路》、《類比電路》這些硬體基礎課(如果要走硬體方向這兩門課還是好好聽),曾經《類比電路》折磨的我是死去活來。什麼半導體二極體,三極體的放大電路,場效電晶體的放大電路,零點漂移,數不勝數的難度線上,希望後來者好自為之,如果你覺得這東西簡單,那麼大神,請收下我的膝蓋。

         還有就是我比較喜歡的兩個科目了,叫做《計算機組成原理》和《微處理器應用》,當然都比較偏硬體部分一點,因為我們的計算機組成老師是一個十分嚴謹有很可愛的教授,所以因為覺得老師不錯就對課比較關心。通過學習真心體會到了計算機的魅力,最為簡單的0與1的世界是如何演變的如此複雜,最為笨拙的計算機是如何一步一步改變我們的世界。驚歎他的是的神通廣大,法力無邊,更加驚奇它的呆板榆木。嚴謹的邏輯步驟,簡單的一步一步,準確無誤。竟然構成了我們無法想像的世界。

        之後接觸到人類在計算機領域中的重大發明-作業系統,它如何作為我們與計算機之間的橋樑,如何將資源效率最大化,如何使使用者感到方便舒適,如何實現與管理所謂的執行緒,程序,訊號,如何給彼此之間分配有限的資源,如何進行排程,輪訓。實現記憶體管理,程序通訊,虛擬記憶體,檔案IO.......等等,對作業系統的學習更加激發了我的好奇心,更加想要進一步去一探究竟。

        從51微控制器入手進入開始去了解處理器,他如何工作,如何控制,如何處理。從定時器,軟硬中斷,串列埠,IO口,單匯流排,I2c匯流排,SPI匯流排...等等去簡單瞭解處理器真正的本質。它的工作原理處理方法思路。從8為位機到16位機再到32位機,從51到AVR到STM32,再到後來的ARM A9系列難度在增加,本質未改變。

            計算機網路,這可是特別厲害的,也是現在不可缺少的,將計算機互相連線起來由剛開始的孤軍作戰到現在的團隊,組織甚至國家(此處是比喻),千萬不敢同日而語,這都要歸功於網路技術的發展,網路模型的規範建立,ip,mac的使用,TCP與IP的巧妙搭配,閘道器路由裝置的結合,套接字的發展.....讓我們的世界多姿多彩,讓計算機的世界五彩繽紛,也讓我學習計算機的步伐更加堅定。

             好瞌睡啊,由於時間問題,後面的就不詳細介紹了,不過也是非常重要的。如《編譯原理》,《軟體工程》,《資料庫》,《資訊保安》,《計算機圖形學》,《物聯網技術》。

            這是我大學三年的計算機入門史,沒有設計高深的技術,因為還是初學者,因為還是大學篇。