計算機學習方法總結
大學四年不知不覺一晃而過,怎麼寫呢?下面小編收集了一些關於,希望對你有幫助
一: 興趣是最好的老師
有兩種力量會推動我們不斷前行,一種是興趣,一種是責任感。其實在前行的路上會發現這兩種力量往往會互相支援著我們前行:因為興趣我們開始了我們的學習、事業,遇到了困難,因為責任而堅持;遇到了瓶頸,忽發現這些正是自己的熱愛所在,又堅持了下來,就像這樣迴圈往復以至最後。
程式設計是一件很需要興趣的事情,因為它需要不斷的學習,不斷的練習,這其中會包含許多不解的難題、無法fix的bug、難眠的夜晚,如果你不能發現其中的樂趣,很難堅持下去並且把它做好。
如果你是計算機專業的,並且喜歡程式設計,那麼你很幸運可以快樂地暢遊在程式碼的海洋中;如果你是計算機專業的,但是一點也不喜歡程式設計,而是已經有了其他的想法,那麼你也很幸運,因為你有了奮鬥一生的目標。如果你是計算機專業的,但是一點也不喜歡程式設計,但是不知道要做些什麼,沒關係儘管去嘗試、去找尋,不要把時間浪費在一點也不喜歡的事情上。如果你不是計算機專業,但卻喜歡程式設計,那麼放手去程式設計吧,程式設計方面的知識通過自學完全可以,我的第一份工作所用到的知識,大部分不是源於課堂,而是來自於自我學習。如果你在糾結要不要從事程式設計相關的工作或者想從事程式設計相關的公作又缺乏興趣,那麼我推薦幾種培養興趣的方法。
***1***尋找自己的偶像
在體育明星中我們經常會聽到某一個成功的運動員被採訪時會說我是因為某某某的比賽而開始訓練、比賽並且讓我一直堅持下去的。我們也需要自己的偶像,一個能激勵我們不斷學習,在困難時讓我們堅持下去的人,“程式猿”的偶像們通常智力超群、目光堅定、成就超凡,比如蘋果公司的喬布斯和沃茲尼亞克、微軟的比爾·蓋茨、谷歌的拉里·佩奇和謝爾蓋·布林、Facebook的扎克伯格等等,他們通常以Make The World A Better Place為己任。的確,因為他們,因為技術,因為“程式猿”們,我們的世界飛速發展,智慧手機、網路,我們的世界的確更好了。當你通過觀看他們的採訪、演講、紀錄片、專記等等,那幫看似無趣的“程式猿”,其實才華橫溢、極富人格魅力,讓我們也想成為他們那樣的人。
***2***書籍與影視作品
這和上一點有點像,隨著對程式設計的瞭解、對程式設計的人的瞭解、對他們生活的瞭解,很可能會產生加入他們的興趣。我收集了一些作品列表,程式設計師閱讀手冊***不斷更新中***、程式設計師觀影手冊***不斷更新中***。記得我看完一部講述一群獨立遊戲開發者的紀錄片《獨立遊戲大電影》之後,立刻下載了遊戲引擎搗鼓起來,在後來的多門課的課程設計中我都做了小遊戲。
***3***最重要的,現在就開始程式設計
記得大一的時候,我對程式設計並沒有興趣,我覺得程式設計只是我大學生涯的作業、任務,我學習的很被動,只能勉強能夠應付課程和考試。但是在那些被動嘗試的過程中,我卻感受到了程式輸出正確時那種成功的喜悅,bug不能解決時想放棄的無助以及經過不懈努力解決bug時的柳暗花明。正是這些嘗試、體驗,然我瞭解到程式設計其實是樂趣橫生的。如果你喜歡挑戰,喜歡新鮮事物,程式設計一定能給你帶來樂趣。我們會有很多機會能把興趣和程式設計聯絡起來,各種課程會有各種課程設計,老師的要求通常是,使用Java語言***或是某某其他語言***、使用與課程相關的知識,做一個作品。這時我們可以做些自己想做的課題,做些有意思的,自己會使用的東西。
二:堅持才是不二法門
經常在書店裡看到這樣一類書,《21天學會XXX》系列,《7天學會做網站》,我買過、也看過,這類書無非是抓住人們渴望“速成”的心態,一本書一般就說了一個例子,演示了一個例子的過程,而對細節的解釋遠遠不夠,看完之後只會有大概的瞭解,離學會、熟練掌握還相去甚遠。
Peter Norvig 寫過,計算機博士徐宥翻譯過一篇文章——《十年學會程式設計》裡提到程式設計像所有其他的技藝一樣,遵循一萬小時理論,即不斷的練習才會真正的掌握程式設計這門技藝,程式設計既是技術、也是藝術,要成為程式設計大師,我們需要靈感、天賦、反覆的練習、在挫折中進步。來不得半點馬虎,速成是不可能實現的,堅持才能。
三:學習經驗分享
前面扯了那麼多閒話,下面乾貨來了~ 分享一點我自己學習的經驗。
***1***學校學習
我覺得學校的課程中,有幾類課是十分重要的。一類是語言基礎課,尤其是你大學乃至人生的第一門程式語言課是十分重要的,因為它會培養你最初程式設計感,培養你程式設計的基本功,以後上手其他語言,就會容易很多。
還有一類是計算機基礎和總體知識的課程,比如作業系統、編譯原理、計算機網路等等,它們會教給你巨集觀的計算機知識,讓你瞭解計算機是如何運作的。
對於以上兩類課程,我的建議是除了認真聽課、完成作業,課後也多查閱資料,多練習,多實踐。
***2***自我學習
技術書籍的選擇
要選擇“著”而不是“編著”,“著”的書往往包含了作者自身長年積累的經驗和知識、見解。而“編著”往往只是簡單的知識的整理收集,缺乏對知識的梳理、講解。國外的書往往質量更高,能直接閱讀英文原文著作當然是做好的,翻譯的作品也是不錯的。
線上程式設計學習網站
網上有各類論壇、部落格包含資訊,不時逛逛,收穫良多。
Codecademy 強力推薦的一個互動式程式設計學習網站,它以練習實踐的方式,進行程式設計教學。
線上課程
如今的線上課程開放平臺十分活躍,能給我們提供的課程也十分多,質量也很不錯。
Coursera 由美國斯坦福大學兩名電腦科學教授創辦。旨在同世界頂尖大學合作,線上提供免費的網路公開課程。
edX 麻省理工和哈佛大學於2012年4月聯手建立的大規模開放線上課堂平臺。
Udacity 大量優質的計算機相關課程。
學堂線上 由清華大學研發出的網路開放課程平臺。
Khan Academy 可汗學院,有關於數學、歷史、金融、物理、化學、生物、天文學等科目的內容。
imooc 國內一個IT課程平臺,多為一些IT圈內大牛主講的課程,質量很不錯,授課內容十分實用。
網易雲課堂 多為技能類課程,種類多。
網易公開課 各類公開課。
還有很多線上課程能夠很好地幫助我們自學。
問答社群
在自學的過程中,經常會遇到各種各樣的問題,一般可以去百度、谷歌等搜尋引擎進行搜尋,也可以去IT類的問答社群。比如著名的stackoverflow,上面的答案可信度非常高;還有國內的segmentfault 等等。
英語
從我上面推薦的資料看來,很多資料都是英文的,這就需要英語的能力。英語能力或許計算機從業者們是除了專業技能之外最重要的技能了。因為最新的技術往往來自於大洋彼岸說著英語的國家,一手的資料往往都是英文的。而且英語是全世界的開發者的通用語言,和其他開發者交流心得體會也需要英語。總之,學好英語有百利而無一害。
四:找工作
***1***選方向
計算機類的技術工作分為好多方向比如Java、C++、Android、iOS、前端、資料庫、資料探勘等等。確定好自己的方向,沿著某一個方向前進是明智之舉。同時可以關注各個公司招聘的職位釋出,找到自己的心儀職位並且按照職位的要求來學習。
***2***boss們真正需要的是什麼?
作為一名初出茅廬的大學生,老闆們當然不認為你有“兩年以上工作經驗”、或是“熟練掌握XXX框架、XXX技術”,他們知道你很多東西都沒有接觸過,他們往往需要兩點,態度和學習能力。態度不用多說,學習能力即學習掌握新事物的能力,就是你多久能融入工作團隊,面對新的任務能否及時完成。要培養學習能力,最好的方法就是在平時多看多學新技術,技術之間都是有同性的,接觸的多了,自然有了套路,知道該如何下手。