大家好,我是若川。最近組織了源碼共讀活動1個月,200+人,一起讀了4周源碼,歡迎加我微信 ruochuan12 進群參與。今天分享一篇阿里云謙大佬的文章。昨天在群里也有小伙伴說到:大佬們是需要什么學什么,新手一般是不會什么學什么。
1. 我每天通常會花 1-2 小時獲取前端信息,但信息實在太多,比如關注庫的 Release、業界新聞、Twitter List 信息、RSS 訂閱、公眾號、NewsLetter、群聊等,到處都在收割注意力,而我們的時間是有限的。
2. 注意力是有限的,選擇很重要,放棄也很重要。每個選擇都有機會成本,這一個小時如果看了點價值有限的八卦新聞,就意味著放棄了更優質的信息。我們需要時刻決定看什么和不看什么,輸入決定輸出。
3. 先看如何識別信息和知識。舉幾個例子,swc 作者加入 next.js 是信息,swc 如何接入 next.js 是知識;umi 發布 3.5 包含 MFSU 提速是信息,MFSU 提速原理是知識。信息容易上癮,我經常刷著刷著一小時就過去了,然后非常懊悔,因為啥都沒學到。所以多關注知識,少關注信息。
4. 有人說「我每天學那么多前端,卻為啥依舊寫不好網頁。」這就看信知比(信息知識的比例)了,如果比例是 8:2、9:1、10:0,看再多又有何用,而且那一點點的知識比可能還是「收藏即學會」的。我之前很長時間是 5:5 或 4:6 的狀態,正在努力調到 2:8。
5. 拋開信息后,前端知識點還有那么多,哪些重要?哪些優先學?哪些又沒啥用?
6. 哪些是死知識,比如 JavaScript 的作者是誰,垂直居中有多少中寫法,Java 和 JavaScript 什么關系,Umi 讀作五米還是烏米,MDH 是馬大哈還是馬德華,Event Listener 和 Event Handler 的區別等等,他們不是沒用,而是用處不大,像人類的盲腸。
7. 工作相關的知識優先學,學是為了用,不用光學太容易忘了,我深有體會。而具體學啥則因人而異,比如我現階段主要關注框架、構建工具、工程化、數據流、路由等,其次關注性能、國際化、權限管理、埋點統計、Serverless、SSR 等,較少關注圖形、低代碼、動畫、Node 框架、容器、K8S、編輯器等,這些離本職工作較遠。
8. 再把時間線拖長了看,基礎和原理性的知識相比會更重要,他們具備更強的繁殖力。比如算法、設計規范、ECMAScript 規范、HTTP 原理、瀏覽器渲染機制、模塊系統、Vue 和 React 的底層原理等,不管前端輪子造地多快,這些知識都很難過期,而且他們有延續性,還能引發思考。
9. 相同的邏輯也可以用在文章、庫、技術方向的選擇上,比如判斷文章,我通常會問問自己「三五年甚至更長時間后,這篇文章是否仍有價值?」
10. 還有是「盡量選難的知識點」,越簡單價值越小。一下就能學會得東西,價值也不會大,比如手寫一個 sleep 函數相比手寫一個 React,像是考試的基礎題和拔分題。那難的知識點讀不懂怎么辦?硬著頭皮讀,反復多讀,有毅力的人不多,所以更顯得有價值。
識別上方二維碼加我微信、拉你進源碼共讀群