方法論-有意識的學(xué)習(xí)

我想很多人都忽略這樣的問題。學(xué)習(xí)就是碰到什么吃什么,不成體系,往往遇到問題時才會覺得,天,我怎么那么多都不明白,真該好好學(xué)習(xí)的。

可是,問題又來了,自己還是不知道學(xué)什么以及怎么學(xué)。

mark開源lib,資訊,這并沒有什么卵用。僅僅是mark,很多時候想著有空了學(xué)習(xí)下,往往過段時間就忘了。即使你使用了,大部分也只是會調(diào)用而已。遇到問題了如何解決,擴展需求如何擴展?

學(xué)習(xí)的根本,是如何處理信息的能力,也就是對現(xiàn)象的分析,歸納和延伸的能力。

一開始,我們通過模仿來學(xué)習(xí),收集的信息和得到的反饋多了之后就會通過思考來學(xué)習(xí)。

這里Stay分享下適合自己學(xué)習(xí)的方法,大家也可以嘗試下。

如何在工作中學(xué)習(xí)

  1. 自己動手比什么方式都提升的迅速,哪怕僅僅是抄一遍(模仿)

  2. 分析需求(我們少有創(chuàng)新,大多算更新,所以所有的需求都有原型,以及延伸的雛形,找到它,試圖理解它背后的邏輯,然后再考慮技術(shù)實現(xiàn))

  3. 設(shè)計原型(來自于經(jīng)驗的累積,流程圖會幫你從混亂的需求中清醒,即使是草圖)

  4. 團隊協(xié)作(了解每個人擅長做什么,出現(xiàn)狀況時,做為旁觀者,你要做的是幫他理清思緒,what when why how,同樣適用于自身)

  5. 編碼(隨時隨地都有big picture,別糾結(jié)于某個detail的實現(xiàn)而拖慢進度,偽代碼的意義重大)

  6. 測試(宏觀測試,確保架構(gòu)穩(wěn)定,局部測試,確保邏輯與性能,兩者會交叉影響,debug時假設(shè)所有變量都存在問題然后一個個排除)

  7. 解決問題(what when why how不管是提問題,還是解決問題,都應(yīng)組織好語言,這個問題是什么,什么情況下發(fā)生,為什么會這樣發(fā)生,如何解決,提問是希望他人能給出提示,而不是解決方案)

  8. 記憶索引(想想搜索引擎的工作原理,記代碼是不可能的,每個解決方案背后都對應(yīng)著一個確定的需求,要記住的是生活化的需求,對這些需求分類建立索引,并用良好的代碼規(guī)范存儲,這是個漫長的過程,一旦存儲,就不會忘記。當(dāng)然可以用note來輔助記憶)

這些同樣也是高效開發(fā)的基準(zhǔn),倘若你覺得這些太理想化,那么請就記住一條準(zhǔn)則:

WHAT,WHEN,WHY,HOW。

它是什么?它在什么場景下發(fā)生?它為什么會是這樣,有沒有其他原因?它是怎么做到的?

如果你覺得已經(jīng)過了模仿的階段,但是處理信息的能力又比較弱。不妨這樣試試。做任何事情之前,有意識的讓自己來一遍what, when, why, how。

時間久了,你會發(fā)現(xiàn)邏輯變得嚴(yán)謹(jǐn),不會鉆牛角尖了,工作變得輕松,debug也不頭痛了。

衡量一個工程師是否優(yōu)秀,不是他會多少API,做過多少項目。而是遇到問題時,會用更優(yōu)雅的方式來解決它。

有意識的學(xué)習(xí),別讓自己陷在終日的復(fù)制粘貼和漫無目的的debug里。共勉~

擴展閱讀:

Stay教你如何學(xué)習(xí)Android(思維入門篇)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容