1
學(xué) ?習(xí) ?篇
學(xué)習(xí)前端,首先建議大家打好基礎(chǔ)。這里的基礎(chǔ)分為兩大類:計(jì)算機(jī)基礎(chǔ)和專業(yè)基礎(chǔ)。
有些人可能會(huì)認(rèn)為:即使沒(méi)有這些基礎(chǔ)也能做前端(這也是不少人說(shuō)前端門(mén)檻低的原因),但是對(duì)這些基礎(chǔ)知識(shí)的掌握情況和理解程度決定了我們可以走多遠(yuǎn)。這部分的學(xué)習(xí)是一個(gè)循序漸進(jìn)的過(guò)程,不可能一蹴而就。
從前端學(xué)習(xí)的曲線來(lái)講,它是先平緩再陡峭再平緩。在學(xué)習(xí)曲線變陡峭那一段,很多人卡在那里。所以就有了我們現(xiàn)在看到的:一堆初級(jí)前端找不到工作,一堆公司招不到好前端。公司要的是經(jīng)歷陡峭之后的那些人。
那如何學(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)的提升,這類 bug會(huì)逐漸減少。
最后,對(duì)問(wèn)題進(jìn)行沉淀,加深理解,進(jìn)而將簡(jiǎn)單問(wèn)題的解決方式應(yīng)用于復(fù)雜問(wèn)題情況下,這也是提升的方式。