新人剛接觸前端,你可能會(huì)問(wèn):
零基礎(chǔ)能學(xué)前端課程嗎牙勘?
要如何開(kāi)始學(xué)習(xí)前端呢朽缎?
如果你是前端工作者,你可能會(huì)問(wèn):
我要怎樣讓自己變得更優(yōu)秀谜悟?
前端天花板低话肖,發(fā)展真的遇到瓶頸了嗎?
接下來(lái)葡幸,我會(huì)從學(xué)習(xí)最筒、實(shí)踐、進(jìn)階三個(gè)方面來(lái)回答這些問(wèn)題蔚叨,分享我的前端成長(zhǎng)經(jīng)歷床蜘。
1
學(xué)習(xí)篇
學(xué)習(xí)前端辙培,首先建議大家打好基礎(chǔ)。這里的基礎(chǔ)分為兩大類(lèi):計(jì)算機(jī)基礎(chǔ)和專(zhuān)業(yè)基礎(chǔ)邢锯。
有些人可能會(huì)認(rèn)為:即使沒(méi)有這些基礎(chǔ)也能做前端(這也是我們之前說(shuō)門(mén)檻低的原因)扬蕊,但是對(duì)這些基礎(chǔ)知識(shí)的掌握情況和理解程度決定了我們可以走多遠(yuǎn)。這部分的學(xué)習(xí)是一個(gè)循序漸進(jìn)的過(guò)程丹擎,不可能一蹴而就尾抑。
那如何學(xué)習(xí)這些基礎(chǔ)知識(shí)呢?
我建議從書(shū)籍蒂培、代碼再愈、標(biāo)準(zhǔn)三方面入手。
書(shū)籍:當(dāng)需要了解某個(gè)知識(shí)點(diǎn)時(shí)护戳,可以多看幾本相關(guān)書(shū)籍翎冲,看不同作者對(duì)這個(gè)問(wèn)題的不同闡述,加深自己的理解媳荒。對(duì)比著看效果更好抗悍。
代碼:檢驗(yàn)我們是否已經(jīng)掌握知識(shí)的好辦法就是閱讀代碼。它不僅幫助我們加深對(duì)知識(shí)的理解钳枕,還可以查漏補(bǔ)缺缴渊,讓我們得到一些新的啟示。有哪些源碼值得我們?nèi)プx呢么伯?
● 書(shū)籍里的代碼
●?前輩們留下來(lái)的代碼
●?論壇里的經(jīng)驗(yàn)
●?某個(gè)網(wǎng)站的代碼
●?很多開(kāi)源代碼都可以作為我們的參考來(lái)源
●?歸納總結(jié)自己以前寫(xiě)的代碼疟暖,你會(huì)得到不一樣的驚喜
標(biāo)準(zhǔn):當(dāng)我們平時(shí)遇到問(wèn)題時(shí),需要追本溯源田柔,而查閱標(biāo)準(zhǔn)就是關(guān)鍵俐巴。互聯(lián)網(wǎng)技術(shù)更新迭代太快硬爆,而且網(wǎng)絡(luò)上的資源良莠不齊欣舵。所以我們甄別的重要方法之一就是查閱標(biāo)準(zhǔn)缀磕。前端相關(guān)的標(biāo)準(zhǔn)主要分為兩方面,即行業(yè)標(biāo)準(zhǔn)和廠商標(biāo)準(zhǔn)袜蚕。?
制定行業(yè)標(biāo)準(zhǔn)的組織主要包括:ecma組織/IETF組織/W3C組織
制定廠商標(biāo)準(zhǔn)的平臺(tái)主要包括:IE/Chrome/火狐等
2
實(shí)踐篇
實(shí)踐階段對(duì)于遇到瓶頸的同學(xué)十分重要,因?yàn)椴还芤允裁礃拥姆绞饺W(xué)習(xí)牲剃,最終目的就是為了解決實(shí)際問(wèn)題遣疯。
圍繞著實(shí)踐中的問(wèn)題,實(shí)際上可以分為:發(fā)現(xiàn)問(wèn)題凿傅、分析問(wèn)題缠犀、解決問(wèn)題、沉淀問(wèn)題四個(gè)方面辨液。
發(fā)現(xiàn)問(wèn)題的途徑有很多,包括產(chǎn)品的功能需求滔迈、開(kāi)發(fā)的非功能要求以及疑問(wèn)止吁、建議、抱怨等亡鼠。更多的時(shí)候需要前端工程師進(jìn)行思考和歸納赏殃,這也是我們面臨的挑戰(zhàn)间涵。
當(dāng)我們發(fā)現(xiàn)問(wèn)題時(shí)榜揖,不要急于上手解決勾哩,要分析問(wèn)題的本質(zhì)举哟,確定產(chǎn)生問(wèn)題的因素,和多方溝通妨猩,提出多種解決方案,分析各自利弊壶硅,再對(duì)照實(shí)際情況做出取舍威兜,最后解決問(wèn)題庐椒。
在業(yè)務(wù)中,80% 的bug主要是業(yè)務(wù)邏輯考慮不全面约谈,漏掉邏輯判斷處理,數(shù)據(jù)格式不規(guī)范等引發(fā)的棱诱。這種bug改起來(lái)比較快,但是容易往復(fù)循環(huán)迈勋,或者引入新的bug。這些bug切碎了開(kāi)發(fā)者的有效工作時(shí)間粪躬。
另外還有15%的bug是由開(kāi)發(fā)者自身coding的問(wèn)題引發(fā)昔穴,屬于技術(shù)性的bug,但隨著開(kāi)發(fā)者對(duì)軟件平臺(tái)以及框架的熟悉吗货,以及自身編程水平以及編程素養(yǎng)的提升,這類(lèi) bug會(huì)逐漸減少宙搬。
最后,對(duì)問(wèn)題進(jìn)行沉淀勇垛,加深理解,進(jìn)而將簡(jiǎn)單問(wèn)題的解決方式應(yīng)用于復(fù)雜問(wèn)題情況下闲孤,這也是提升的方式。
3
進(jìn)階篇
到了一定程度之后讼积,個(gè)人能力很難再提升,遇到了瓶頸勤众。此時(shí),需要先從個(gè)人角度出發(fā)们颜,了解是否觸及天花板,另可以從團(tuán)隊(duì)角度出發(fā)窥突,尋找突破點(diǎn)。
個(gè)人能力可以從深度和廣度方面進(jìn)行分析波岛。深度分為三個(gè)階段:表象、原理以及實(shí)現(xiàn)音半。表象就是之前提到的基礎(chǔ)階段。下一個(gè)階段就是能了解其中原理煌茬,對(duì)知識(shí)點(diǎn)能夠把握和識(shí)別。實(shí)現(xiàn)階段就是能夠充分利用已有的知識(shí)體系坛善,進(jìn)行運(yùn)用。
再?gòu)膹V度角度出發(fā)眠屎,可以分為專(zhuān)業(yè)技能和領(lǐng)域范圍兩部分剔交。專(zhuān)業(yè)技能可以從知識(shí)體系的覆蓋面和了解度出發(fā)改衩。也就是覆蓋面夠不夠廣岖常,以及對(duì)常見(jiàn)解決方案的了解程度葫督。而領(lǐng)域范圍的拓展就需要對(duì)其他產(chǎn)品進(jìn)行了解,比如移動(dòng)端橄镜、桌面端等的了解。
以上方面如果都很優(yōu)秀的話洽胶,就是一個(gè)很優(yōu)秀的前端工程師了。但是僅僅個(gè)人優(yōu)秀還不夠妖异,我們還需要團(tuán)隊(duì)優(yōu)秀领追。
團(tuán)隊(duì)方面的突破,重點(diǎn)關(guān)注流程绒窑、效率和協(xié)作。目前在網(wǎng)易的工作模式些膨,基本遵循以下的流程,相對(duì)來(lái)說(shuō)還是比較細(xì)致和規(guī)范的订雾。
| 新需求上線
需求→交互→視覺(jué)→開(kāi)發(fā)→自測(cè)→測(cè)試→bug修改→測(cè)試→bug修改→測(cè)試→交互確認(rèn)→視覺(jué)確認(rèn)→上線申請(qǐng)→確認(rèn)→上線
| Hotfix上線
問(wèn)題反饋→bug修改→測(cè)試→bug修改→測(cè)試→上線申請(qǐng)→確認(rèn)→hotfix上線
最后給大家分享兩句話:
始終保持一份謙虛謹(jǐn)慎的心態(tài).
始終加強(qiáng)學(xué)習(xí)能力的培養(yǎng)。
編輯:千鋒HTML5