學編程的最佳方法和路徑,你掌握了嗎?
來自專欄 科多大數據
學習編程頭痛嗎?
過程中,不少的同學都抓狂了吧!
在學習過程中,總是遇見各種問題!
1.網上找了很多資料,不知道從哪裡看起
2.買了本書,過了很久也沒有看完第一章
3.開始還能跟著寫幾行代碼,後來突然就看不懂了
4.也看了些教程和視頻,似乎明白了,但還是沒法自己寫代碼
5.入門了很多次,每次過兩個月就又全忘了
對於初學者,尤其是自學者
太多問題可能成為你編程之路上的坎
一不小心就從入門到放棄了
想好好學習編程
這些路徑你一定要清楚
你需要一個明確的學習目標
很多人會說,我有目標啊,就是要學會編程,然後還要找份高薪的程序員工作。這是一種目標,但不是明確的、具體的、可執行的學習目標。這就好比說「我要幸福」、「我要做自己想做的事」但沒有具體標準一樣,對你的行動沒有任何指導意義。
你要學編程,是為了去寫一個自動腳本搶票搶優惠券,還是平常處理大量文件時候可以自動化?是為了驗證你股票上的交易策略是否可靠,還是做一個網頁推廣自己的品牌?如果你的目標是為了找工作,那是想做開發遊戲還是桌面軟體,是數據處理還是網站,前端還是後端?編程是一個很廣泛的概念,明確你的目的,學習時才能有方向,也更能堅持下去。
先建立整體的認知
在軟體開發領域有這樣一句話:過早的優化是萬惡之源。
在編程學習里同樣有效。很多人會追求某種一步到位的終極路線,表現出來就是:
(1)希望別人推薦一套最佳教程
(2)先理論後實踐
(3)鑽入細節的牛角尖
似乎看起來沒什麼不對,明確路線、打好基礎、按部就班,很符合一貫的教育理念啊。就好像你執意要優化你的代碼一樣,如果我說你這麼做是錯的,倒顯得我有問題。
但事情是分時機的,正確的事情在不合適的時間去做,就會導致錯誤的結果。過早地陷入局部細節,追求理論基礎,很容易讓初學者困惑,以至於在某個點上卡殼,無法繼續學習下去。淺顯易懂和專業性強本來就是很難調和的兩個維度,很多教程之所以優秀,是因為它內容體系完善,但對於你來說真的合適嗎?
對於早期學習者,尤其是非專業的自學者來說,囫圇吞棗、不求甚解才是更合理的打開方式。學習編程是一個反覆迂迴、不斷迭代的過程,而不是一路到底的單行道。
選擇合適的起點和路線
在有了明確的目標,建立了整體的認知之後,接下來的事情就很自然了:選擇一個合適你的起點,朝著通往目標的方向,開始你的學習,點亮技能圖譜上的點,並將其連接起來。否則,盲目地從一個不恰當的地方開始,比如選了一本起點較高的書,或是上手就去折騰某個框架,就會事倍功半,效率很低,甚至導致放棄。所謂「欲速則不達」,就是這個道理。
以上三點,通俗來說就是,你要弄清楚:
(1)學了幹嘛
(2)學哪些內容
(3)從哪學起
你去隨便找一款目前市面上流行的手機遊戲,會發現它們的新手引導也是類似的套路:
(1)向你說明遊戲的勝利條件,引導你取得一場勝利(明確目標)
(2)讓你體驗一套高級別高配置的陣容(整體的認知)
(3)指導你遊戲基本操作和初期的升級(起點和路線)
這些遊戲經過精心設計,力求讓玩家成癮。對於學習也是如此,讓自己儘快「上癮」,才能深入下去。
以上只是學習編程的一個開端
學習編程不能操之過急
關於學習編程的經驗,歡迎大家留言討論
推薦閱讀:
※Python 005:循環語句
※Python基礎練習題
※Python 004-03:字元串全部處理方式
※一種從入門到熟練掌握數據科學編程語言的流程
※中文編程目前面臨的難題是什麼,你有哪些建議?