1. 程式人生 > >冰凍三尺非一日之寒-自學篇 淺談個人學習方法

冰凍三尺非一日之寒-自學篇 淺談個人學習方法

昨晚還在看比賽(war3),小源跑過來問我明天1024,不寫篇文章麼,想想也是,1024這也算個熱點,趕緊來蹭蹭,哈,開個玩笑。

上次談了談自己寫部落格的經歷,那麼這次就從自身出發來想想該如何學習,首先表明下:

本人剛入行的一名Android研發,以下如何學習,描述的都是本人自身的方法,不代表適合所有人,僅為建議參考。

以前在上學期間,有大把的時間學習和遊戲,自從加入工作以後,發現時間的分配越來越重要。在面試的時候,詢問一些專案中使用的第三方庫和一些比較熱點的問題的時候,經常聽到的答案就是沒了解過,業務太忙了,根本沒時間。

恩,其實也是,業務的確忙,不幹活哪來的薪資。所以上班了之後,如何分配時間就是很關鍵的問題了。

上班以後給我的一個最大的感受就是:沒有非常多的整塊時間了,每天剩的就是晚上到家後的3個小時左右,這3個小時可能還不能完全投入到學習中。

所以一定要合理的利用閒碎時間。

準備一個TODO應用

因為沒有非常大的整塊時間,就不要讓學什麼這種問題來浪費你的時間。因為我每次在想學什麼的時候,都會習慣性開啟QQ,然後可能就被吸引過去打dota了(~~(>_<)~~)。

所以,準備一個TODO應用,把學什麼這個問題拋給日常生活中。

  • 比如坐地鐵的時候,看微信推送的文章,遇到自己沒了解過的,把關鍵詞記下來。
  • 在工作中,偶爾搜尋問題的時候,發現自己一些某些未了解過的知識的時候,先記下來關鍵字;工作完成後,憑著關鍵字再回來學習。
  • 看書過程中,可能也會遇到一些點,書上寫的不是非常的清晰,但是的確自己不瞭解,記下關鍵字。
  • 和同行吹牛的過程中,別人提到的不會的東西,記下關鍵字。
  • 在QQ群吹牛的時候,雖然群很水,但是捕獲到一些不瞭解的關鍵詞還是可以的。

千萬不要相信自己的記憶力,好記憶不如爛筆頭真句話是對的。

所以,準備一個TODO應用或者好用的便籤,只要能方便的記錄關鍵字就好。當你有時間的時候,看看自己的記錄表,選一個關鍵字,利用2-3個小時,消化這個關鍵字。

我就自己寫了個demo用來記錄:

過了一段時間,可以看看自己曾經遇到了多少個不會的知識點,當下又消化了多少個。

以前我喜歡儲存書籤,後來發現,其實有關鍵字就夠了,相信程式設計師是能夠用好搜尋引擎的。

養成記筆記的習慣

記筆記,這是個非常棒的習慣。

首先,你應該有個筆記本;當然也可以選擇電子的,不過我喜歡紙質的。

  • 工作上,對一些問題,進行調研、分析、最終解決方案,這些東西一定要記得總結、整理,記到筆記本上。不然下次遇到這個問題,還要去找程式碼,找到了還要去想,當時為啥要要這麼寫那就尷尬了。
  • 看書,對於一本書,你拿到手,基本上不可能裡面所有的東西你都不會,也不能所有的東西你都會。所以,在看書的時候,旁邊放個筆記本,把看到的寫的不錯的地方(或者是以前未關注的),記到筆記本上(後續可以根據筆記做驗證)。

    不過我一般會把一些未了解過的直接在目錄上寫下一些關鍵字,然後可能會將這些標記的部分再讀一遍(可能是幾遍),最後記錄到筆記本上,這樣你就能將一本書,濃縮為幾頁的筆記了,會大大節省你以後複習的時間。

  • 看視訊,我現在看視訊比較少,不過我大學的時候看過無數的視訊,看視訊最後的產物最好的就是筆記,程式碼可能時間長了都會丟失或者忘記。抱著一點印象,去視訊中找某個知識點,還是非常痛苦的,再說視訊那麼佔空間,不如刪了換點新貨。所以,將無數個視訊濃縮了一個筆記本,還是非常棒的。

    現在好的視訊非常多,也不需要我推薦了,大家都懂。

  • 看部落格,恩,同上,記錄下你覺得值得記錄的東西。

養成良好的閱讀原始碼的習慣

原始碼閱讀,恩,尤其是針對你正在使用的第三方庫。

千萬不要面試的時候,什麼原始碼都未學習過,理由就是業務太忙,更有甚者說“我覺得沒用”。

閱讀原始碼,我一般分為兩種,一種為粗讀;

大概就是,根據使用的入口,大體的檢視類間關係,呼叫的流程,瞭解其內部的原理。比如retrofit2,大致粗讀,瞭解核心是動態代理,內部其實依賴okhttp3,介面方法中的註解的方式,實際上是利用反射提取構建okhttp的Request用的。

還有一種是細讀;

細讀就是看的非常的細緻,思考它為什麼這麼做,甚至遇到對某個地方比較好的處理,拿筆記本完整的將程式碼記錄下來也可以。

粗讀了解大致原理,細讀吸收其精華。

當然了,說起來容易,實踐起來還是挺難的,所以加油吧。

注意閱讀原始碼的前提是你對其是用來幹嘛的,以及基本的使用你都瞭解了。不要隨便抓個庫,上來就讀原始碼,何必呢~

長期的技術學習規劃

上面幾點就是在積累比較分散的知識點。

這一點主要是一個大方向的學習計劃。

  • 定個期限,讀完一本書。不管什麼時候,都可以考慮保持長期的讀書計劃。好處就不多說了,不要在乎一本書的錢,能學到一點東西都是值得的。
  • 長期的學習規劃,遇到一些平時用不到,但是想學習的但是又不是幾天可以學完的,可以列為長期的學習計劃,比如framework,一門指令碼語言,React Native等,可以找幾個朋友一起學,相互間的督促可能更容易堅持些。我就找過妹子一起學習framework,每週一個方面…

好了,以上就是我的學習方法~

量變引起質變,不堅持,再好的學習方法也沒用。

微信公眾號:hongyangAndroid
(歡迎關注,不要錯過每一篇乾貨,支援投稿)