專業(yè)的學(xué)習(xí)路徑是怎么樣的?
程序員也有鄙視鏈,后端開發(fā)程序員普遍看不上前端,原因是前端入門真的太簡單了。就html、css、簡單的JavaScript,認真學(xué)一天也能做個簡單的網(wǎng)頁來。
但是想要做好卻并不簡單,前端的學(xué)習(xí)路線有點陡峭,到后期要對各種細節(jié)問題進行探究、優(yōu)化,所以如果想要做好,那也不簡單,關(guān)鍵還在于得多下功夫。
學(xué)習(xí)路線:
1、HTML、CSS、JavaScript語法基礎(chǔ)。學(xué)完基礎(chǔ)后,可以仿照電商網(wǎng)站(例如京東、小米)做首頁的布局。
2、JavaScript語法進階。作用域和閉包、this和對象原型等。前端的有很大一部分都在JavaScript與DOM上面了。JS目前來說在開發(fā)崗位算是最“萬能”的語言,前后端通吃。我曾經(jīng)有個項目中就是用JS技術(shù)棧開發(fā)一個完整的系統(tǒng),整個項目不管是運行在服務(wù)器端的程序還是運行在PC端的程序,基本上都是JS寫的。JS很重要、JS很重要、JS很重要(重要的事情說三遍)。
3、Xpath、Ajax、jQuery等。
4、移動Web開發(fā)、Bootstrap等。要注意移動開發(fā)中的適配和兼容性問題。
5、前端框架:
Node.js,nodejs不一定得學(xué)會,但是npm包管理一定要清楚,因為一些大型的前端項目會有一堆包。
Vue.js和React,這兩個框架必須要熟練一個。建議先學(xué)Vue.js,上手相對容易。同時掌握 Vue 和 React 才是合格的前端同學(xué)。
6、自動化工具:構(gòu)建工具 Webpack、構(gòu)建工具 gulp、CSS 預(yù)處理器 Sass 等。
7、網(wǎng)絡(luò)通訊:HTTP協(xié)議、跨域通信、安全問題(CSRF、XSS)、瀏覽器渲染機制、異步和單線程、頁面性能優(yōu)化、防抖動(Debouncing)和節(jié)流閥(Throtting)、lazyload、前端錯誤監(jiān)控、虛擬DOM等。
8、底層原理:V8、垃圾回收、內(nèi)存生命周期、線程。
9、圖像處理:canvas、WebGL。
10、面向?qū)ο笤O(shè)計、架構(gòu)設(shè)計、算法等。
PS:前面5條建議按照順序?qū)W習(xí),這是基礎(chǔ)內(nèi)存,作為一名前端必須掌握的。后面5條可按照需求修改先后順序。
以上是作為一名純技術(shù)前端來講的,如果是偏向UI前端,那么比較需要多一點了解業(yè)務(wù)知識,并且盡可能自己的審美觀變得接近大多數(shù)人。
附上一個我用前端實現(xiàn)的表情包,圖二(歡迎吐槽我的審美[我想靜靜])