遇到瓶頸,說明你是一個進階的小白了。進階階段是全方位的提升,包括知識掌握深度、技術(shù)應(yīng)用能力、問題轉(zhuǎn)化能力、團隊協(xié)作能力、利用工具能力等。如果說新手階段是在演習(xí),熟悉兵器,進階就是要上戰(zhàn)場了。戰(zhàn)場上就是真刀真槍,每一個舉動都關(guān)系到身家性命——錢。這個戰(zhàn)場就是項目,成果就是互聯(lián)網(wǎng)產(chǎn)品??傊褪俏奈浼?zhèn)?,進階的開發(fā)者要有與團隊快速完成項目并投入商業(yè)的能力。下面從文、武、器三個方面來梳理。
武——過硬的技術(shù)
武指的是技術(shù)能力——進前端知識掌握的深度與應(yīng)用。進階的開發(fā)者已經(jīng)是個成熟的開發(fā)者了,要快速要對HTML、CSS和JavaScript知識有全面的掌握,并將之融會貫通,揉成一個東西,快速轉(zhuǎn)換成具有價值(滿足某些需要的功能或者創(chuàng)造商業(yè)價值)的產(chǎn)品。
推薦使用原生的代碼去實現(xiàn),但由于商業(yè)環(huán)境的激烈競爭,我們?nèi)匀豢梢越柚恍┹o助工具來加速這個過程,比如學(xué)習(xí)和使用前端UI框架,Bootstrap、Bulma、Materialize等,他們都是非常優(yōu)秀的響應(yīng)式框架,有助于我們快速構(gòu)建自己的應(yīng)用,當然在利用之于,如果你研究挖掘框架本身,無疑你將會收獲更多。
除了UI框架,隨著前端工程化和大型化的趨勢,JS框架如雨后春筍般發(fā)展。這些框架帶來了新的交互和體驗,以及模塊化的開發(fā)模式,有助于團隊協(xié)作完成大型項目,所以掌握這些框架,非常有利于你在戰(zhàn)場上速戰(zhàn)速決。目前比較火的有React、Angular和Vue。
其次,實際項目中很重要一方面就是數(shù)據(jù)交互?;镜木W(wǎng)絡(luò)協(xié)議,通信方法,get、post、Ajax要學(xué)起來,如果略懂后臺知識是最好的。
最后,良好的編程習(xí)慣和規(guī)范也是一個程序員素養(yǎng)最好體現(xiàn)。
文——理解溝通執(zhí)行能力
文就是你的軟實力或者說是你的情商方面體現(xiàn)出來的。比如理解能力,團隊協(xié)作能力,抗壓能力、溝通表達能力。進階的開發(fā)者必須完成項目,而且大多數(shù)項目都是以團隊形式完成的,所以出了過硬的技術(shù),以上能力能降低溝通成本,縮短開發(fā)周期,提高效率,提高產(chǎn)品的質(zhì)量。
工作態(tài)度和自我管理也是在工作中非常重要的方面。
器——開發(fā)工具和協(xié)作工具
1. 編輯器及其插件
前端開發(fā)常用的編輯器由輕到重分別為notepad++、Sublime Text、Atom、Brackets、HBuilder、VS Code、WebStorm等,當然據(jù)說有高人用記事本寫代碼的,只能跪拜,DW就不推薦使用了。
另外,插件才是編輯器最迷人的地方,好的插件可以減輕編碼帶來的痛苦,讓原本乏味的工作看起來更加酷炫。
2. 版本管理工具以及模塊化
Git是每一個程序員都知道也都必須會用的版本管理工具,前端開發(fā)亦如此。一些基礎(chǔ)的命令行,如touch, cd, mkdir什么的必須會, 這些在工具使用過程中非常有用。其他使用到的工具有:
包管理工具:NPM 或 Yarn
打包工具:Webpack 或者 Parcel
任務(wù)管理和構(gòu)建工具:Gulp 或者 Grunt
3. 狀態(tài)管理工具
狀態(tài)管理是指管理你的應(yīng)用級的狀態(tài),對于使用框架的大型前端項目, 可能需要經(jīng)常用到。常見的工具有:
Redux(Context API)
Apollo(GraphQL Client)
Vuex
NgRx
總結(jié):進階的開發(fā)者掌握技術(shù)知識,能夠利用工具,和他人協(xié)作,將知識轉(zhuǎn)化產(chǎn)品,變投入商業(yè)用途,實現(xiàn)價值。畢竟產(chǎn)品掙錢,老板才能掙錢,老板掙錢了,你才可能有錢分??!
不瘋魔 不成活!