如何學習一門新的編程語言?

作者: 陽志平  發布時間: 2012-02-09 17:42  閱讀: 5026 次  推薦: 2   原文鏈接   [收藏]  

  答案是:在學習區刻意練習,每天500行。什么是學習區,就是那種,你剛剛夠得著,但是還是需要付出一點努力的。

  1. 如何尋找學習區

  1.1 經典教程

  一般某門新語言的圖書,在豆瓣排名比較靠前,口碑都很不錯的,挑一本帶課后練習的就行了,放棄那種雖然寫的很好,但是不帶練習題目的,那種書作為備選就可以了。Ruby社區,我常常推薦日本Ruby學會會長寫的這本:《Ruby Programming》課后習題。

  1.2 笨方法系列

  Ruby與Python雙修的怪才Zed Shaw,推出了笨方法學習編程的系列教程。里面已經有了Ruby\Python\C系列。Zed Shaw開源了相應的方法論、資料,你也可以將它改為自己要學的版本,比如Java、Arduino等。

  網址:http://learncodethehardway.org/

  Ruby中文版

  Python中文版

  1.3 社區英雄設計的練習題目

  任何一個社區,都有一些英雄人物,樂意傳承自身的知識體系,因此,設計了大量的練習題目。比如,Ruby社區的以下材料都很適合初學者。

  http://rubykoans.com/

  http://kidsruby.com/

  http://rubymonk.com/

  1.4 人氣較旺的程序員問答社區

  個人比較推薦:http://stackoverflow.com/(編者注:國內程序員問答社區可以去博問

  可以去這里回答別人的問題,如果時間有限、可以先下載stackoverflow的top問題電子書

  別急著看最佳答案,自己嘗試寫下答案。然后再與最佳答案對照。

  2. 在學習區刻意練習的輔助工具

  初學編程,最應該記住的是在學習區刻意大量練習,千萬少看書,要多練習。當年我從管理咨詢行業繼承的陋習,先看大量資料,才進入某個領域,并不適合學習編程。

  刻意練習時,有以下重要的工具。

  2.1 TextMate的Bundle

  Windows下的朋友暫時缺少,通過bundle可以快速掌握一門語言的核心語法,并自由擴充自身的知識庫。

  2.2 cheatsheets

  cheatsheets類似于考試時的小抄,將某個需要學習的東西精華整理在一頁或幾頁紙上。

  http://cheat-sheets.org/,找到里面的Ruby cheatsheets或者你自己所用到語言的小抄,有多個版本,找一個最適合自己的版本 ,然后下載并打印出來。一張紙囊括核心內容。

  cheatsheets,還有很多在這里:http://refcardz.dzone.com/

  2.3 FlashCard

  FlashCard是一種學習方法,先將題目呈現,然后心中默想答案,再翻看答案。

  將與學習相關的FlashCards下載在手機或者打印出來,然后等車等無聊時間,予以默想。

  比如:http://www.yoyobrain.com/cardboxes/103

  以及一個特別針對Ruby on Rails的app

  網上有大量的關于Flash Card的社區。可以特意去搜索自己所學習的語言的。

  3. 如何提升行動力:人類行動心理學的有效Hack

  人為什么會拖延、人為什么行動力很差。近些年心理學已經取得了突破性研究成果。普通人思考目標的時候,使用的是目標意圖, 是:

我要做什么....

  但是,有位天才心理學家 Peter Gollwitzer 發現目標意圖這樣的思考范式,反而很難達成目標,于是,他對自己的實驗對象,使用了一種替代范式。強迫實驗對象,使用一種稱之為:執行意圖的思考范式來思考。結果令人驚訝,人們更容易克服拖延癥、達成目標。

  什么是執行意圖?就是使用if...then...的思考范式。比如, 不要再說,我要學Ruby。 而是說,如果我要學習Ruby,那么,今天晚上就裝上環境。

  當你關于行動與目標,長年累月這么思考,最終建立自動化機制,那么行動力慢慢就變強大了。如果...那么...成為生命中的一部分。我要...這種句式,就從自己的語言體系中死掉了。

  4. 編程始終是個人行為

  剛開始,不要:

  • 忙于去社交
  • 泡各種論壇、發無聊帖子
  • 下載各種盜版電子書(自己花錢買來的你才會格外心疼)
  • 爭議哪種語言更好

  每個人的世界都是如此不同,不爭議,用它做點作品,或者是送給自己的女朋友,或者是賺點外快。慢慢地,就成長了:)

2
1
 
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()