其實,十年前,在業(yè)界前端開發(fā)都不配叫工程師,因為很多人感覺前端開發(fā)的工作很簡單,就是寫個樣式,設(shè)計師就順便把這個活干了,所以,當(dāng)時前端開發(fā)在程序員心里地位是很低的。
但是,隨著移動互聯(lián)網(wǎng)的發(fā)展,隨著前端和移動端相結(jié)合,大前端概念應(yīng)運而生的同時,前端面對的工作是越來越復(fù)雜,尤其是在前后端分離的今天,前端不僅僅要應(yīng)對界面的開發(fā),也涉及到復(fù)雜的業(yè)務(wù)邏輯的處理,對于前端的開發(fā)要求是越來越高了。
我順便要為前端工程師正名:前端工程師的工作量,相對于后端來講比較大一些,不僅僅要應(yīng)對前端界面和設(shè)計,以及應(yīng)對產(chǎn)品經(jīng)理的挑剔,還要跟后端工程師確定交互的數(shù)據(jù)格式和接口。重要的是前端各種瀏覽器的界面的適配,大前端引發(fā)導(dǎo)致的還要適配移動端的工作,相對于后端生態(tài)的穩(wěn)定,完善和生命周期長,前端框架和技術(shù)生命周期更短,這就意味著前端工程師要不斷的學(xué)習(xí)和更新自己的知識,給前端工程師的壓力就越來越大。
所以,做前端是很厲害的。
那前端學(xué)習(xí)到什么水平可以出去找工作呢?我分享一個前端學(xué)習(xí)路線圖,如下:
這里分為三個階段:
第一階段:基礎(chǔ)學(xué)習(xí)階段
其實前端學(xué)習(xí)的東西挺多的,我們需要學(xué)習(xí)前端的開發(fā)語言,用于處理業(yè)務(wù)邏輯的: JavaScript,用于畫界面的標記語言HTML,以及用于美化界面的CSS。這是第一個基礎(chǔ)階段必須要學(xué)的。
我認為在第一個階段最重要的學(xué)習(xí)是: JavaScript 和CSS,我并不是說HTML不重要,它很重 要,但是相比去JS和CSS,其實HTML作為標記語言相對比較簡單。JS 幫你處理復(fù)雜的業(yè)務(wù)邏輯,CSS可以提升界面美化的性能,總之,JS和CSS為你后期在性能優(yōu)化的處理上會有很大的幫助,所以這兩個東西的學(xué)習(xí),基礎(chǔ)階段必須重視。
第二階段:中級實戰(zhàn)階段
你掌握了這個階段的學(xué)習(xí),其實你就可以有能力出去找工作了。
需要掌握的知識算是基礎(chǔ)提高課,HTML5+CSS3和ES6+ TypeScript,這些需要了解一下, TS是趨勢,這里的H5,CSS3, ES6, TS是基礎(chǔ)學(xué)習(xí)階段的升級版本,這些需要你學(xué)習(xí)的同時,如果能夠達到找工作的水平,還必須會其中-種框架: Vue, React, Angular ,這三大主流框架當(dāng)中的一種。
其實,傳統(tǒng)的JQuery和DOM相關(guān)的知識點也需要了解一下, 雖然現(xiàn)在用得不多了。
當(dāng)然了,相對來講這三種框架Vue是華人開發(fā)的,文檔是中文的,中國人學(xué)習(xí)來比較快,入門也比較低。所以,很多人都會學(xué)習(xí)Vue,國內(nèi)用Vue前端框架的公司也很多。
如果你通過前面基礎(chǔ)學(xué)習(xí)階段的學(xué)習(xí),可以熟練使用JS,CSS, H5的同時,又能掌握了一個開發(fā)框架,那么你就達到前端可以找工作的水平了。
當(dāng)然了,這僅僅只是達到找工作的水平了,如果你想在前端可以有更好的發(fā)展,還得繼續(xù)深入。
第三階段:高級進階階段
想要前端更進一步的發(fā)展,就必須好好學(xué)習(xí)一下瀏覽器內(nèi)部運行的原理,掌握一些常用的設(shè)計模式,做到前端工程化,也就是:代碼模塊化、功能組件化,打包、構(gòu)建、發(fā)布自動化、流程化。
在性能優(yōu)化方面很重要,網(wǎng)站性能優(yōu)化、SEO和服務(wù)器端的基礎(chǔ)知識也是必須掌握的。包括代碼的可維護性、組件的易用性、分層語義模板和瀏覽器分級支持。
這些高級功能必須掌握,這些知識掌握了,才能讓你寫出一個高效率,高性能的頁面,這是我們前端開發(fā)工程師的追求。
你看這三個階段涉及的知識是不是很多,很雜呢?這三個階段不僅僅前端工程師一個學(xué)習(xí)路線,更是一個進化,進階的過程,我們前端的學(xué)習(xí)在未來地位會越來越高,需要的技能和要求也會越來越復(fù)雜。前端學(xué)習(xí)最重要的是按照路線圖進行系統(tǒng)化的學(xué)習(xí)。
不像我們十年前學(xué)習(xí)那么痛苦,現(xiàn)在的人學(xué)習(xí)很方便,因為現(xiàn)在網(wǎng)上有很多的學(xué)習(xí)資料,有很多不錯的系統(tǒng)課程可以幫助大家更加高效的去學(xué)習(xí)和掌握實用技能,可以少走很多彎路。
我是個多年開發(fā)經(jīng)驗的程序員,懂前端、Java、Python。年初整理了一份最新的WEB前端學(xué)習(xí)教程,無論你是計算機專業(yè)想往前端開發(fā)方向發(fā)展,還是零基礎(chǔ)想要轉(zhuǎn)行做程序員,都可以通過這份教程學(xué)習(xí)??梢缘竭@個WEB前端學(xué)習(xí)裙獲取,前面484 中間757 后面760 。學(xué)習(xí)過程中遇見有不懂的問題,也可以在里面問,大家都會幫忙解答, 學(xué)習(xí)氛圍好。