如何快速高效的學會一門編程語言

根據最近csdn博客中各位博主的經驗分享,總結一下快速有效學習一門編程語言的方法。

 

目錄

一、快速學會一門新的編程語言的方法:

二、高效學習程序的方法:

三、比較簡潔的對需要快速掌握的部分分類:語言和系統

四、快速掌握一門語言的50%

五、十步學習法和費曼學習法:

六、通過向身邊大佬請教總結的方法:

七、激勵自己堅持下去的方法:


一、快速學會一門新的編程語言的方法:

1.確定目標:確定的目標不是你每天學習多少內容 。是一個實際的任務、明確的目的 。確定的目標應該是這樣的,如:在 6.1 日前完成小程序報修管理系統 ,6.10上線供客戶使用 。你需要明確你要完成一個什麼樣的程序 ,什麼樣的系統 。

2. 找一個學習的導師:第一位導師,也是最常用的導師 :百度。前提是搜索的方法正確關鍵詞正確;第二位導師,是你的一位前輩、老師或者朋友 ,比較有經驗,能夠指導你少走很多彎路,跳過很多坑 。

3.着手寫程序:開始寫程序,直奔主題。每一步遇到問題都去百度搜索解決,只要能解決問題就可以,不用太多原理,只要實現功能就可以。

4.回頭系統學習基礎知識。寫了一個小的系統,信心倍增,梳理項目中的知識點將其學會。以項目爲目標,少想多做先完成項目再系統學習。從實踐中學習是最快的方法,多寫多看多聽多請教。

二、高效學習程序的方法:

學習編程語言的過程簡單描述爲:過、抄、仿、改、調、看、練、創、悟。

1.過:基礎知識點不求深解,語言什麼樣的,適用場合、基本語法格式

2.抄代碼:從書上抄、例子中抄、邊抄邊想邊想邊回憶語法

3.模仿改:仿照給出的代碼寫出自己的代碼

4.勤調試:不斷調試驗證自己想法,繼續思考,再次驗證。熟悉調試工具調試方法

5.看n遍:出錯或者遇到問題時,將代碼從頭到尾看n遍直到快記住,找出問題原因

6.練:2-5步三遍以上

7.創新:拿出一個沒有寫過的根據要求,一步一步寫出來,寫不出來參考6

8.悟:主動找到寫代碼的感覺和成就感,保持下去。

三、比較簡潔的對需要快速掌握的部分分類:語言和系統

1.語言:類型、變量、運算符、循環控制語句、字符串操作、數組和集合、函數(參數、返回值)、面向對象編程(類、接口、抽象類、屬性、繼承、多態、封裝等等)、多線程、放射、異常處理。

2.系統:控件(基本控件、列表控件、自定義控件)、事件(事件綁定、事件監聽、)網絡(網絡基本協議、網絡請求、網絡框架)、存儲(數據庫、文件)、頁面間交互(跳轉和傳參)、生命週期(控件的和頁面的)、模塊化

3.完整的項目:推送、埋點、性能監控、崩潰統計、設計模式(MVC、MVP和MVVM)等等。

四、快速掌握一門語言的50%

可以在幾天至一週掌握最常用的50%:

1. 首先了解該語言的基本數據類型,基本語法和主要語言構造,(數據類型、變量、邏輯控制語句、表達式、函數);

2. 其次掌握數組和其他集合類的使用,可以理解一下泛型;

3. 簡單字符串處理。查找替換,截斷去字串之類的。

4. 基本面向對象或者函數式編程的特徵,(編程模式)繼承、多態、Lambda函數之類的;

5. 該語言如何進行callback方法調用,(回調機制)如何支持事件驅動編程模型。如:C++OX的 tr1::function/bind。

6. 序列化和反序列化,爲了在不同平臺之間傳輸對象;

7. 異常、錯誤處理、斷言、日誌和調試支持,對單元測試的支持。

8. 程序代碼和可執行代碼的組織機制,運行時模塊加載、符號查找機制,

9. 基本輸入輸出和文件處理,輸入輸出流類的組織,搞清楚概念,用到的時候查就是了。

五、十步學習法和費曼學習法:

1.約翰Z森梅茲十步學習法:

利用好奇心吸收更多知識,對自己學習的內容有基本的瞭解,然後利用這些信息勾勒自己的學習範圍,然後尋找資源制定自己的學習計劃,“學習-時間-掌握-教授”

第一步:瞭解全局 只讀教材的主題張潔對內容有全局的瞭解

第二步:確定範圍,名明確自己到底學什麼,爲什麼要學

第三步:定義目標,清晰的陳述,比如:我可以使用C++語言的功能寫出小程序

第四步:尋找資源:圖書、博客、在線專家以及源代碼、示例項目、在線文檔:從Google搜索關鍵詞“beginner tutorials”開始,搜索相關的入門教程。Nettuts+上面有成千上百的教程,StackOverflow有學習資源。Quora也是一些不錯的選擇。

第五步:創建學習計劃:如果5位不同作者都將內容非爲相同模塊和順序,按照該方法制定自己學習目標

第六步:篩選資源。

 第七步:開始學習,淺嘗輒止,不會多到無力探索;

第八步:動手操作,邊玩邊學;

第九步:全面掌握學以致用;

第十步:樂爲人師,融會貫通:寫博客、視頻創建教程、發表演講於朋友交流、在線論壇回答問題。

2.費曼學習法:

第一步:選擇目標(Specific具體、Measurable可測量、Attainable可實現、Relevant相關性、Time—based時效性);

第二步:教學(可以一對一講述,可以寫博客、錄製視頻、對手機錄音);

第三步:糾錯並深入學習(反覆查資料、學習強化記憶);

第四步:簡化(通俗易懂的自己語言說出來)。

六、通過向身邊大佬請教總結的方法:

簡要的說就是實踐+看書+視頻:

1.時間規劃;

2.列出知識點並畫腦圖:工具xmind ;

3.做筆記:自己包裏隨身裝筆記本。印象筆記:知識點和收穫;

4.看書官方文檔; 

5.視頻:bilibili,YouTube;

6.看源碼:Github可以進去入口打個斷點,一點點的下去,刨根問底的看這樣好很多了,可以結合他的思維導圖看。學習如何管理規模較大的項目;項目中應用的有趣的庫;代碼規範以及代碼全局設計;文檔風格;測試規範; 解決詭異問題的方法,以及發現項目中有問題的地方;

7.針對面試刷題:牛客網https://www.nowcoder.com,力扣:https://leetcode-cn.com

8.看博客:stackoverflow:https://stackoverflow.com,掘金:https://juejin.im,博客園:https://home.cnblogs.com/知乎、csdn、開源中國:https://www.oschina.net/blog 9.實踐:不斷實踐、犯錯、吸取經驗、不斷進步

 

七、激勵自己堅持下去的方法:

如何讓自己拼了命的發了瘋的學習:

1.最好的激勵辦法=外部刺激+自我獎勵;從內心深處明白自己想要什麼,靜下心來,全身心的投入進去,發自內心的喜歡它,熱愛它,渴望它,真真切切的享受它 + 適當的外界獎勵。

2.階段性反饋機制,獎勵機制很重要:只有努力的xx纔可以xx。

3.每天完成一個小的階段,獎勵自己看電影或者彈吉他,使用時間管理軟件如forrest、番茄ToDo、滴答清單等將目標量化。

4.Leecode等網站做題,做出一道題給人帶來的成就感。

5.以解決問題爲目標,然後在電腦桌上放幾樣能激勵自己的事物,如喜歡的房子或者豪車等。

6.番茄工作法,25分鐘高度集中,5分鐘的獎賞。直播學習,bilibili上的學播。

7.自我獎勵:享受時間過程大於結果。

8.堅持寫csdn博客將自己的學習量化,不管激勵自己。讓別感覺自己很重要,想要成爲專家需要1萬小時

9.成爲大牛會得到別人的認可,要成爲“快去找xxx,這個問題只有他能解決”。多看看牛叉的人,跳出自己的生活圈。嘗試去一些自己消費不起的餐廳。

10.洗腦:我就是喜歡學習,我就是喜歡學習,別讓我停下來,不用多久我就能走上人生巔峯。

11.思維導圖法:將一本書簡化成一張表

12.制定可行的具體的計劃、計劃精確到每一天。設定目標並向朋友發送進展情況。

參考:

  1. https://blog.csdn.net/dataiyangu/article/details/97544551
  2. https://blog.csdn.net/lianghe_work/article/details/47041255
  3. https://blog.csdn.net/wjwj1203/article/details/105180907
  4. https://blog.csdn.net/myan/article/details/3144661
  5. https://blog.csdn.net/qq_35190492/article/details/103847147
  6. https://blog.csdn.net/qq_18887855/article/details/81228881
  7. https://blog.csdn.net/haoaoo/article/details/78018787
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章