計算機專業學習的一些思考和總結

Apple WWDC 2014 標誌及宣傳語前端

  • 大學四年不知不覺一晃而過,在臨近畢業之際,寫下這篇文章一方面是對本身的總結,另外一方面向其餘同窗分享個人經驗。*
    <br >
  1. 興趣是最好的老師
    有兩種力量會推進咱們不斷前行,一種是興趣,一種是責任感。其實在前行的路上會發現這兩種力量每每會互相支持着咱們前行:由於興趣咱們開始了咱們的學習、事業,遇到了困難,由於責任而堅持;遇到了瓶頸,忽發現這些正是本身的熱愛所在,又堅持了下來,就像這樣循環往復以致最後。

編程是一件很須要興趣的事情,由於它須要不斷的學習,不斷的練習,這其中會包含許多不解的難題、沒法fix的bug、難眠的夜晚,若是你不能發現其中的樂趣,很難堅持下去而且把它作好。程序員

若是你是計算機專業的,而且喜歡編程,那麼你很幸運能夠快樂地暢遊在代碼的海洋中;若是你是計算機專業的,可是一點也不喜歡編程,而是已經有了其餘的想法,那麼你也很幸運,由於你有了奮鬥一輩子的目標。若是你是計算機專業的,可是一點也不喜歡編程,可是不知道要作些什麼,不要緊儘管去嘗試、去找尋,不要把時間浪費在一點也不喜歡的事情上。若是你不是計算機專業,但卻喜歡編程,那麼放手去編程吧,編程方面的知識經過自學徹底能夠,個人第一份工做所用到的知識,大部分不是源於課堂,而是來自於自我學習。若是你在糾結要不要從事編程相關的工做或者想從事編程相關的公做又缺少興趣,那麼我推薦幾種培養興趣的方法。數據庫

(1)尋找本身的偶像
在體育明星中咱們常常會聽到某一個成功的運動員被採訪時會說我是由於看了某某某的比賽而開始訓練、比賽而且讓我一直堅持下去的。咱們也須要本身的偶像,一個能激勵咱們不斷學習,在困難時讓咱們堅持下去的人,「程序猿」的偶像們一般智力超羣、目光堅決、成就超凡,好比蘋果公司的喬布斯和沃茲尼亞克、微軟的比爾·蓋茨、谷歌的拉里·佩奇和謝爾蓋·布林、Facebook的扎克伯格等等,他們一般以Make The World A Better Place爲己任。的確,由於他們,由於技術,由於「程序猿」們,咱們的世界飛速發展,智能手機、網絡,咱們的世界的確更好了。當你經過觀看他們的採訪、演講、紀錄片、專記等等,那幫看似無趣的「程序猿」,其實才華橫溢、極富人格魅力,讓咱們也想成爲他們那樣的人。編程

(2)書籍與影視做品
這和上一點有點像,隨着對編程的瞭解、對編程的人的瞭解、對他們生活的瞭解,極可能會產生加入他們的興趣。我收集了一些做品列表,程序員閱讀手冊(不斷更新中)、程序員觀影手冊(不斷更新中)。記得我看完一部講述一羣獨立遊戲開發者的紀錄片《獨立遊戲大電影》以後,馬上下載了遊戲引擎搗鼓起來,在後來的多門課的課程設計中我都作了小遊戲。segmentfault

(3)最重要的,如今就開始編程
記得大一的時候,我對編程並無興趣,我以爲編程只是我大學生涯的做業、任務,我學習的很被動,只能勉強可以應付課程和考試。可是在那些被動嘗試的過程當中,我卻感覺到了程序輸出正確時那種成功的喜悅,bug不能解決時想放棄的無助以及通過不懈努力解決bug時的柳暗花明。正是這些嘗試、體驗,然我瞭解到編程實際上是樂趣橫生的。若是你喜歡挑戰,喜歡新鮮事物,編程必定能給你帶來樂趣。咱們會有不少機會能把興趣和編程聯繫起來,各類課程會有各類課程設計,老師的要求一般是,使用Java語言(或是某某其餘語言)、使用與課程相關的知識,作一個做品。這時咱們能夠作些本身想作的課題,作些有意思的,本身會使用的東西。網絡

<br >框架

  1. 速成的謊話,堅持纔是不二法門
    常常在書店裏看到這樣一類書,《21天學會XXX》系列,《7天學會作網站》,我買過、也看過,這類書無非是抓住人們渴望「速成」的心態,一本書通常就說了一個例子,演示了一個例子的過程,而對細節的解釋遠遠不夠,看完以後只會有大概的瞭解,離學會、熟練掌握還相去甚遠。

Peter Norvig 寫過,計算機博士徐宥翻譯過一篇文章——《十年學會程序設計》裏提到編程像全部其餘的技藝同樣,遵循一萬小時理論,即不斷的練習纔會真正的掌握編程這門技藝,編程既是技術、也是藝術,要成爲編程大師,咱們須要靈感、天賦、反覆的練習、在挫折中進步。來不得半點馬虎,速成是不可能實現的,堅持才能。編程語言

  1. 個人編程學習經驗
    前面扯了那麼多閒話,下面乾貨來了~ 分享一點我本身學習的經驗。

(1)學校學習
我以爲學校的課程中,有幾類課是十分重要的。一類是語言基礎課,尤爲是你大學乃至人生的第一門編程語言課是十分重要的,由於它會培養你最初編程感,培養你編程的基本功,之後上手其餘語言,就會容易不少。ide

還有一類是計算機基礎和整體知識的課程,好比操做系統、編譯原理、計算機網絡等等,它們會教給你宏觀的計算機知識,讓你瞭解計算機是如何運做的。學習

對於以上兩類課程,個人建議是除了認真聽課、完成做業,課後也多查閱資料,多練習,多實踐。

(2)自我學習
技術書籍的選擇
要選擇「著」而不是「編著」,「著」的書每每包含了做者自身終年積累的經驗和知識、看法。而「編著」每每只是簡單的知識的整理收集,缺少對知識的梳理、講解。國外的書每每質量更高,能直接閱讀英文原文著做固然是作好的,翻譯的做品也是不錯的。

在線編程學習網站

網上有各種論壇、博客包含信息,不時逛逛,收穫良多。
Codecademy 強力推薦的一個交互式編程學習網站,它以練習實踐的方式,進行編程教學。
在線課程
現在的在線課程開放平臺十分活躍,能給咱們提供的課程也十分多,質量也很不錯。

Coursera 由美國斯坦福大學兩名計算機科學教授創辦。旨在同世界頂尖大學合做,在線提供免費的網絡公開課程。
edX 麻省理工和哈佛大學於2012年4月聯手建立的大規模開放在線課堂平臺。
Udacity 大量優質的計算機相關課程。
學堂在線 由清華大學研發出的網絡開放課程平臺。
Khan Academy 可汗學院,有關於數學、歷史、金融、物理、化學、生物、天文學等科目的內容。
imooc 國內一個IT課程平臺,多爲一些IT圈內大牛主講的課程,質量很不錯,授課內容十分實用。
網易雲課堂 多爲技能類課程,種類多。
網易公開課 各種公開課。
... ...
... ...
還有不少在線課程可以很好地幫助咱們自學。
問答社區
在自學的過程當中,常常會遇到各類各樣的問題,通常能夠去百度、谷歌等搜索引擎進行搜索,也能夠去IT類的問答社區。好比著名的stackoverflow,上面的答案可信度很是高;還有國內的segmentfault 等等。

英語
從我上面推薦的資料看來,不少資料都是英文的,這就須要英語的能力。英語能力或許計算機從業者們是除了專業技能以外最重要的技能了。由於最新的技術每每來自於大洋彼岸說着英語的國家,一手的資料每每都是英文的。並且英語是全世界的開發者的通用語言,和其餘開發者交流心得體會也須要英語。總之,學好英語有百利而無一害。

  1. 關於工做
    (1)選方向
    計算機類的技術工做分爲好多方向好比Java、C++、Android、iOS、前端、數據庫、數據挖掘等等。肯定好本身的方向,沿着某一個方向前進是明智之舉。同時能夠關注各個公司招聘的職位發佈,找到本身的心儀職位而且按照職位的要求來學習。

(2)boss們真正須要的是什麼?
做爲一名初出茅廬的大學生,老闆們固然不認爲你有「兩年以上工做經驗」、或是「熟練掌握XXX框架、XXX技術」,他們知道你不少東西都沒有接觸過,他們每每須要兩點,態度和學習能力。態度不用多說,學習能力即學習掌握新事物的能力,就是你多久能融入工做團隊,面對新的任務可否及時完成。要培養學習能力,最好的方法就是在平時多看多學新技術,技術之間都是有同性的,接觸的多了,天然有了套路,知道該如何下手。

最後,請記住咱們偉大的夢想:
Write the code. Change the world.

yangfengzu
2021年1月

做者:yangfengzu
連接:https://www.jianshu.com/p/0dff5466217e來源:簡書

相關文章
相關標籤/搜索