天天看點

我是如何成為程式員的

轉載請标明出處:http://blog.csdn.net/ecorefeng

作者:朱克鋒

   英語情節

    我接觸計算機程式設計應該說是一種偶然,聯考考入某工業大學,學習食品科學,和大多數大學生一樣我并不喜歡自己的專業,調劑害死人啊,呵呵呵。。。

    從進入大學的第一天起我就給自己定下了最低限度:不能挂科!隻要有了限度,那就可以肆無忌憚的做自己的事情了,這是我的做事方法,我不斷地尋找自己喜歡的東西,不久我決定學習英語,我是那種很愚笨的人,盯上某件事就不會輕易放棄的人,于是報新東方英語教育訓練班的課,能報的幾乎全報了,隻要有時間就猛背單詞,結果呢,一年後單詞背了好幾萬,也算小有所成,不敢說英語好但也不差,至少比專門學英語的學生要“好”,大學嘛,學的太多了,有用的太少了,英語專業也不例外哦嗚嗚嗚。

  我, 樂此不疲,學習着。。。

    偶遇C語言

     在大二的上學期,我們開設了一門叫《C語言程式設計》的課程,我至今也沒有弄明白食品科學專業為什麼要學習C語言程式設計這種東西,食品科學多學一些HACCP、QA、工藝遠比學C語言好處要多吧?不過正是這門課對我以後走上程式員的道路産生了巨大的影響。

《C語言程式設計》給我的影響可以說是以痛苦開始的

      和以前一樣,我依然逃課,學習英語,過程并無多大差距,乃至很多代課老師都會瞪着眼睛問我你是這個班級的的嗎?更有甚者打電話到系辦确認我這個學生的存在!

    為什麼說我的C語言是從痛苦開始的呢?過程是這樣的,因為過分的逃課,我甚至都沒有見過帶我們《C語言程式設計》的老師,在期末考試來臨時,我和原來一樣認為這些課花一天時間突擊一下就過了(最低限度是不挂科,過了就行),可是當我拿起《C語言程式設計》課本的時候,我發現我犯了一個緻命的錯誤:因為它是一門語言。學語言的人都應該知道,語言這個東西是不可能在一兩天内突擊出來的,看着那些奇怪的符号我痛苦至極,不是因為不會而是因為我要打破我的最低限度,要挂科了。也就是說這個極限都有可能突破,在我現在看來C語言考試是我大學四年所有考試中最痛苦的一課,面對試卷上的字元一臉茫然,讀者可能沒有經曆過這種痛苦,是很難描述的。實在沒有辦法了,總不能真的挂了吧,幸好我前面的那個家夥學的不錯,監考老師呢,和我關系還不錯(可見大學和老師關系好是多麼重要,開玩笑了),那是我對自己 說回去一定把它學了,就這樣我開始我的C語言之旅。

     事後我真的找了一本C語言學了起來,記得好像是譚浩強的書,國内很是經典。

     學了幾天之後我發現C語言這個東西挺有意思,學起來感覺很舒服,很實在,給人的感覺就是太神奇了,是那麼的精确和可操控,當時索性把英語暫放一邊學起C語言來,在學習C的過程中發現計算機可能是我遇到的學科中最真實的一門課了,它是實在的、客觀的。

     随着學習的深入,我開始感到力不從心,系統的知識太貧乏,無法深入了解其中的很多東西,在一段時間琢磨之後決定轉向計算機系學習,無奈能力有限最終沒有轉成,但是這是我已經下定決心要學習計算機了,于是我放棄英語學習計算機,這個決定從現在看來是對的,當時就感覺我喜歡,我就要做。

    以後相當的一段時間我都和計算機系的學生一起上課,學習系統的計算機理論知識,可是我慢慢發現計算機系的課程安排并不是太合理,比如說我認為很重要的課程他們都當做選修或考試不做重點,當然學生們學習起來不會上心了,學校教育以考試為目的嘛,如以後實際工作很重要的《資料結構》、《系統》、《編譯原理》等等教學難度都降到了最低,慢慢的我就不再和他們一起上課了,自己到圖書館裡研究這些東西,後面我會說到我在圖書館的學習經曆。

     通過對資料結構、作業系統的學習我對C語言有了更好的了解,但最終也沒有掌握C語言的精髓,特别是C語言中的指針概念,這個東西學起來簡單,用起來就有些難度了,特别是想用好就更難了,設計記憶體方面的東西可能是最難了解的,有些大師級的人物說過,如果沒有深入了解C語言的指針就沒有真正學會C語言。

    在瘋狂中堕落

    事情與很多偶然性,我後來學習Java語言也不例外

    大三的時候開始接觸Java語言,事情起因是以為老師說和我談論面向對象這種東西,當時我對面向對象與面向過程根本沒有什麼概念。之後不久我就開始對Java語言進行了學習,我的堕落也由此開始。

    Java語言可以說是一種純粹的面向對象的語言,它簡單高效,學習Java因為有了C的基礎,一開始就有了比較好的思路,學起來相對輕松但深入學習還是要下一番功夫的,這時我已經堕落的很嚴重了,雖然不抽煙、不喝酒、不打遊戲,但是對本專業幾乎放棄了,又時一周都不會去上專業課,當時考試還是很有心得,大學四年從沒有出現過挂課。所有時間都花在了學習語言上了,我在圖書館租了一間工作室(我們學校圖書館這點很不錯,在圖書館的一個樓層建了很多小的工作室),我基本上8點到工作室,晚上11點回宿舍,除了生活必須我基本上很少離開工作室,在裡面我近乎瘋狂地學習,一學期下來很少見到同學了,不過這段時間我确實進步了不少。

     在沒有人指導的時候就會走很多彎路(這裡建議多和工作的人接觸,會有很多意想不到的收獲),以後幾個月我偏離了正常學習軌道,我浪費了大量的時間去學習所謂的那些新的技術,從現在來看當時的幾個月時間算是浪費了,學到的都是沒有是沒有實質的東西

    實習與工作

    我是大三的下學期開始實習的,是一位老師找到我說給我一份兼職,搞程式設計的,我當然欣然答應了。

    工作任務就是老師從外面接來項目讓我們做,象征性的付給我們一些薪水,不過千萬不要看重這些薪水,要看重這份工作,在做項目過程中把學到了東西實踐化、系統化很是提升能力,正是這份兼職讓我走上了程式員的道路。

    我的第一份工作,也是我目前從事的工作,公司也是原來的公司,大四我離開學校隻身前往深圳,加入一家通訊公司做伺服器與網際網路開發,我所在的部門是公司的一個高端産品部門,是一個學習型的團隊,經理是一位資深的工程師,在這裡無論是從技能還是處事方面我都有很大的進步,後來大學畢業之後還回到原來的部門繼續以前的開發。

    給在學習程式設計的同學一些建議

    作為文章的結尾,我想把一些建議寫出來,其實不能說是建議,是經曆與感觸吧。

    1,不管你是計算機專業還是非計算機專業的,你都可以成為程式員,并且可以成為一個優秀的程式員,隻要你努力。

    2,不管你是計算機專業還是非計算機專業的,如果你想成為程式員你都要努力學好《資料結構》《作業系統》《編譯原理》《組成原理》等等一大批基礎課程

    3,不管你是計算機專業還是非計算機專業的,如果你想成為程式員你都要努力學好C語言,不管你喜不喜歡,當然如果你不喜歡你怎麼會想成為程式呢呵呵呵呵,是以你一定喜歡

    4,切忌要多動手,程式是寫出來的不是看出來的。

    5,不能隻學一門語言,要相輔相成。

    6,要盡可能找一份兼職(程式設計方面的)在你畢業前。

    7,找一個專業人士尋求幫助。

----end----

繼續閱讀