【碼農翻身】看書好還是看視頻好?
又偷懶了……
我的方法是:視頻先1.2+倍速入門(針對有一定基礎的朋友們,沒有基礎的話,還是一步一個腳印的來吧),視頻中的代碼要搞懂,最重要的是你一定要明白這個視頻到底要你學會些什麼?視頻中的老師有沒有什麼騷操作?好的總結?
接下來就是書籍,博客的深入淺出了
原文:
這個問題仁者見仁、智者見智:
有人覺得書細緻而嚴謹,全面而詳實,有人覺得看起來比較枯燥;
有人覺得視頻有聲音有圖像,更加生動活波,但有人覺得視頻很囉嗦,不能像讀書那樣快速推進。
我的觀點是無論是讀書還是看視頻,都是一種手段, 關鍵是在學習過程中得有目標感。
對於學習一門具體的技術而言,學習前最好是先列舉問題,多問幾個問什麼,然後再帶着這些問題到書或者視頻中去尋找答案,即有目的地去搜索,主動去學習。
比如打算學習redis,可能會有這樣的問題:
爲什麼要有緩存?
緩存和應用程序是在一個進程內還是不同的進程?
緩存在本機還是網絡上?
緩存裏能放什麼東西?
數據是什麼格式?
緩存和數據庫的一致性怎麼保證?
如何實現高性能?
一個redis服務器滿了怎麼辦?
一個redis服務器掛了怎麼辦?
…
我們帶着這些疑問去學習,就會發現一本書,一個視頻遠遠不夠 – 因爲無法回答我們所有的疑問。
很有可能需要讀好幾本書,讀很多文章,搜索很多東西,來回對比,纔有可能解答這些疑問, 也有可能一些問題一直解答不了,突然有一天在編程或者討論中被觸動,這纔打通了任督二脈。
還有一個好的實踐是經常站在設計者的角度去思考這些問題,甚至自己去考慮實現方案, 然後和人家的實現對比,會有極大的收穫。
用這種方式其實就是以我爲主,不斷豐富自己的知識結構,建立自己的知識大廈。
自己的知識大廈一旦建立起來,應對層出不窮的新技術就會輕鬆得多,因爲真正顛覆性的、革命性的技術並不多,大部分新的工具和框架都是巧妙地充分地利用了現有技術,很好地解決了某一方面的問題。
當然,如果是新手,經驗不足,一開始提不出那麼多問題,或者提出的問題非常的籠統,沒有指導性,怎麼辦?
那也沒關係,羅馬不是一天建成的,提不出問題,就要善於總結。
我們在讀書、看視頻的時候,要勤于思考和總結:這一章到底講了什麼東西,解決了什麼問題? 能不能用自己的語言給描述一遍?
學習編程是有加速度的,自己的知識結構越豐富,就跑得越快。
做個比喻:就是努力把自己往上提,儘量從上往下俯視。
也許剛開始只能仰視,慢慢地平視,最後就是開啓了上帝視角俯視了。