對(duì)于前端工程師,永不過時(shí)的技能是什么?
放眼前端這幾年的發(fā)展,經(jīng)歷了移動(dòng)互聯(lián)網(wǎng)時(shí)代的爆發(fā),出現(xiàn)了以 Angular、React、Vue 為代表的三大前端框架,竟然成為了困擾前端工程師的一個(gè)“難題”——哪個(gè)框架比較好?我該學(xué)哪個(gè)框架?
一方面很多前端同學(xué)在抱怨前端發(fā)展太快學(xué)不動(dòng)了;另一方面還有不少同學(xué)陷入瓶頸,懷疑自己甚至懷疑前端這個(gè)行業(yè)。不能否認(rèn),追蹤熱門框架和技術(shù)的最新發(fā)展很有意思。
回過頭來再看前端技術(shù)的發(fā)展,那些熱門的前端框架和五花八門的各種庫,真的能直接幫助你進(jìn)階到下一個(gè)更高的級(jí)別嗎?或許短期有效果,但如果你想在這個(gè)領(lǐng)域深入進(jìn)去,還是應(yīng)該把最寶貴的時(shí)間花在可遷移的技能上——那些永不過時(shí)的技能。
那對(duì)于前端人來說,永不過時(shí)的技能是什么呢?
應(yīng)該是一個(gè)程序員的內(nèi)功。當(dāng)然了,對(duì)于不同級(jí)別的前端工程師來說,需要具備的核心技能也不太相同。

對(duì)于高階前端來說,除了具備前端的基礎(chǔ)技能之外,還需要提升自己的核心能力,也就是編程能力、架構(gòu)能力和工程能力。
編程能力,就是用代碼解決問題的能力。你編程能力越強(qiáng),就能解決越復(fù)雜的問題,細(xì)分又有調(diào)試、算法、數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)原理等基礎(chǔ)的支撐,你才能解決各種麻煩的問題。
架構(gòu)能力,就是掌控復(fù)雜系統(tǒng)的能力。當(dāng)一個(gè)系統(tǒng)足夠復(fù)雜,你會(huì)寫每一塊、能解決每一個(gè)問題,不等于你能搞定整個(gè)系統(tǒng),這就需要架構(gòu)能力。架構(gòu)能力包含了一些意識(shí),也包含認(rèn)識(shí)業(yè)務(wù)建立抽象模型,還有一些常見的模式等。
工程能力,其實(shí)核心就是成事的能力。你要知道,當(dāng)系統(tǒng)規(guī)模越來越大時(shí),光靠你一個(gè)人是沒辦法完成的。那如何保證幾個(gè)高手互相能夠配合好?如何保證項(xiàng)目里面水平最差的人不拖后腿?工程化建設(shè),往往會(huì)跨越多個(gè)業(yè)務(wù)如何保證質(zhì)量和代碼風(fēng)格?
這三項(xiàng)能力不管對(duì)于前端還是后端開發(fā)來說,可以說都是從初級(jí)、中級(jí)走向高級(jí)必須要跨越的鴻溝,也是作為一名程序員永不過時(shí)的技能,也可以提升你自身的崗位競爭力。