前端學起來特別吃力,新人入前端怎麼學?
最近知乎收到一些問題,問前端學起來吃力,連續更新幾次回答的比較全了。現在整理下分享給部落格的小夥伴們。
前端工作兩年多。大部分前端原理、框架都能完全運用。工作中幾乎遇不到解決不了的問題(除了那些噁心無法實現的需求)現在經常被安排去面試新人(被安排去面試,主要是工作能力比較突出的原因,公司還有很多3年以上的員工)。
下面說說我的學習方法或許對你有用!
一、打好基礎不用說
HTML、CSS、JavaScript 三大件,完全掌握。不懂得就直接查 MDN。
HTML重點掌握語義化。區分塊級和內聯標籤。其他查文件就好了。還有就是定義 head 裡面一些meta 瞭解下。
CSS。重點看盒子模型,定位,層級,過渡,動畫和 transform。知道原理和規則。大部分工作都是照著設計稿化。掌握上面幾個 99% 還原也不難。接下來重點學習幾種常見的佈局。完了之後去搞flex。最後搞下sass、less。基本就差不多了。
JavaScript。重點來了,紅寶書看一遍掌握基礎,進階去看《你不知道的 JavaScript》。就這兩套足夠了,別搞那麼多。
每個知識點搞懂。ES6 基本沒啥問題。下面幾個問題優先搞懂,優先順序如下:
this 用法,相關原理
原型/原型鏈
閉包
物件導向相關
同步非同步/回撥/promise/async、await
模組化 CommonJS, AMD
先搞這懂這些比較難的概念,對你JS理解更加深入。接下來在開始看框架方面:
二、框架方面
前期要會用,後期要懂原理。
新人先搞 Vue。Vue 算是上手容易的框架。照著官方文件來問題不大。原理方面要提高自己認識。學習怎麼看原始碼。github常去逛逛。
學習框架之前,我其實特別建議,新人先去了解 Babel 和 webpack 不僅僅是使用。一些原理方面的東西工作中也會用到。babel 裡面會有教你如何編譯程式碼。webpack 教你如和打包檔案。自己手寫編譯器和打包工具也不是特別難。反正對之後看vue、react原始碼幫助挺大。
搞完 Vue 全家桶,去了解下 React,React hooks 學習下新的理念。再回過頭來看Vue。你會發現他們是如此的相似去又不同。 多去實踐總結,對整體框架理解會越來越深刻。
三、如何看原始碼
新人剛開始看原始碼,會陷入兩個困境中。一是無從下手。二是看了之後感覺沒啥收穫。
這個也很正常。一般我們熟知的框架都有個幾千甚至上萬個PR。太大細節會干擾你。掌握整個節奏和流程。學習原理也比較吃力。就連找個入口都像大海撈針一樣。
建議從下面幾個方面入手:
挑簡單的上手。別一開始就搞 vue、react、webpack。太難,會直接勸退新人。
不要為了面試而去讀。反而效果不好,面試稍微問深入一點就答不出來了。平時有興趣多琢磨琢磨。按照難易程度,函式庫 < 元件庫 < 框架 < 工程化 分別典型代表 lodash < vant < vue < webpack
手擼簡易模型。像vue, webpack, babel 都有簡易專案給你擼。有的創始人(尤哥)還直播手擼。國外的更多,youtube 一搜一大堆。就算不看原始碼,照著寫出了簡易 demo 對原理和理解提升都是很大的。
除錯開源專案。先把專案拉下來。在vscode裡面跑下,核心函式多打幾個斷點。看看裡面變數是怎麼diff的。 對理解更深刻了。
看了原始碼是別人的,學到了是自己的。學習時候邊記筆記,邊思考原理,總結經驗。下面來談談前端工程化怎麼弄。
四、前端工程化
現在最流行的打包工具 webpack 用起來。當然直接用 vue-cli2、vue-cli3、create-react 都是可以的。但是 webpack 相關還是得掌握。
首先重點搞下babel、webpack。
學習下編譯和打包的原理。
自己配置下 webpack。嘗試自己去寫下下 webpack 的 loader 和 plugin。
學習這些之前要懂一點 node.js, node.js 不需要全部學習。一般就日常用到讀寫檔案fs介面,path 路徑介面。這些 api 都不難寫幾個 demo 就懂了。基本上webpack 裡面配置檔案也沒用到多少 node 的東西。最後自己學會配置 webpack 的配置檔案。
如果想深想去優化打包體積和速度,就需要去了解很多webpack外掛。webpack 裡面最核心的就是外掛了。
當然前端工程化不僅僅是這些,CI/CD可持續整合, Umi 瞭解下。sh各種指令碼自動化命令、程式碼生成技術瞭解下。
相關文章
- 小白怎麼入門前端 Web前端都學些什麼前端Web
- 初學者怎麼學Web前端?Web前端
- 怎麼入門web前端?轉型web前端工程師怎樣學才能拿高薪?Web前端工程師高薪
- Web前端到底需要學什麼?應該怎麼學?Web前端
- Web前端怎麼學?如何成為Web前端工程師?Web前端工程師
- 初學者怎麼學懂前端?Web前端原始碼、框架學習路線圖前端Web原始碼框架
- 什麼人適合學習web前端?怎樣學好web前端開發?Web前端
- 好程式設計師web前端分享哪些人適合學前端?怎麼學?程式設計師Web前端
- web前端開發怎麼樣學習?看這份web前端學習路線Web前端
- 自學前端如何快速入門?怎麼快速入門前端?前端
- 長沙Web前端培訓:怎麼才算學好Vue前端框架Web前端Vue框架
- 前端框架擼起來——概述前端框架
- 怎麼做優秀前端工程師 Web前端學習路線是什麼前端工程師Web
- 學習web前端自學就業前景怎麼樣?Web前端就業
- 2018年,前端應該怎麼學?前端
- Web前端薪資如何?誰適合來學Web前端?Web前端
- 剛畢業想學習HTML5前端開發,該怎麼學才能最快入門HTML前端
- 深入前端學習原來這麼有趣 第4期前端
- 新手學Web前端有哪些方法?該怎麼去規劃學習?Web前端
- 前端框架擼起來——根元件前端框架元件
- web前端開發怎麼入門?Web前端
- 現在學習web前端如何?就業怎麼樣?Web前端就業
- 學習web前端培訓就業前景怎麼樣?Web前端就業
- 零基礎怎麼學習web前端開發?Web前端
- Web前端是學什麼的?Web前端
- 不會程式設計能學前端嗎?web前端需要學習什麼?程式設計前端Web
- 前端需要學習什麼?長沙web前端培訓班學費多少?前端Web
- Web前端如何學?Web前端學習方法分享Web前端
- 前端系統學習——前端學習路線前端
- 初學者應該怎麼學習前端?web前端的發展路線大剖析!前端Web
- 怎樣學好web前端開發Web前端
- 迎來工程化的大前端時代,大前端到底是什麼?需要學習什麼前端
- 什麼是前端開發?為什麼要學前端開發?前端
- 什麼是Web前端?Web前端要學習什麼內容?Web前端
- 前端零基礎入門學習!前端真簡單前端
- 重學前端前端
- 前端學習前端
- 前端週刊第63期:前端新人如何快速提高?前端