如今的WEB前端技術已經變得相當復雜。在以往,MVC是構建WEB應用程序的主流模式。在MVC模式下,前端的開發工作相對是比較輕松的,大部分的流程控制和視圖組織展現,屬于后端開發者的工作任務。前端開發人員只需注重界面的布局以及樣式設計即可。
但自從AJAX以及RIA(富互聯網應用)模式的興起,交互式提現成為WEB應用前段的潮流方式。而構建RIA應用的關鍵技術便是JAVASCRIPT。以前的JAVASCRIPT是一種職能比較單一的前端編程語言,主要負責DOM的處理。并且當前端的結構變得復雜的時候,我們的JAVASCRIPT代碼就會變得難以維護。自從ES6推出之后,JAVASCRIPT擁有了模塊化設計的能力,在這種情況下,JavaScript構建復雜的、組件式的前端應用成為了可能。隨著ES6/以及TYPESCRIPT等JS同類語言技術的進一步應用推廣,如同JAVA技術領域一樣,越來越多的開源項目、工具助力JAVASCRIPT的發展,并且演變出了各種前端技術框架和構建管理工具。優秀的技術如:npm、webpack等源代碼構建維護工具,以及vue、react、angular等前端開發框架,JAVASCRIPT便擁有了一個涵蓋語法標準、設計規范、項目構建管理規范、測試部署規范為一體的準工業化軟件工程體系。雖然JAVASCRIPT的軟件工程化開發模式起步比較晚,但是社區發展迅速、應用范圍廣泛,相信在今后很長的一段時間內JAVASCRIPT端工程師的職業將會產生大量的需求。
只要你不是抱著賺快錢的“歪心思”,希望往程序員這條路發展,并想著努力成為一個合格的前端,就趕緊學起來吧~ 個人和其他幾位答主一樣,對前端的發展持看好態度。原因主要有兩個:
1、崗位需求量大
截止18年12月17號,全國的前端招聘需求量為 88337
下圖是招聘需求量地區排行 TOP 10(你所在的城市有沒有上榜?)
前端崗位截圖:
僅從上面的數據就可以發現,目前的前端崗位需求量大,而且薪資可觀(p.s. 不然也不會有那么多人轉前端了)。那有的小伙伴可能會說:不是最近一年都在傳前端行情不好、已經飽和了之類的嘛。這句話其實是不準確的,確切的說法應該是現在的前端市場“低端”飽和“高端”缺人。經過這幾年的市場消化,前端工程師的要求普遍被提高,如果感覺工作不好找,最好還是從自身找下原因。我一個玩兒的不錯的前同事,這些日子天天抱怨前端的活兒干不完,面了快2個半月了,一個靠譜的前端都沒招到。所以不要被前端飽和這種說法誤導,只要你足夠優秀,到哪兒都是香餑餑,根本不愁找不到好工作~2.應用場景廣泛
現在前端的應用場景越來越廣闊。比如利用Canvas,SVG,WebGL來做前端數據可視化,基于NodeJS做全棧式開發、還有在2018年騰訊大力推廣的微信小程序開發... 真的是數不勝數。就拿現在熱門的人工智能(AI)為例,企業還可以通過集成AI來開發網站應用。例如使用機器學習來預測客戶接下來要買什么、通過麥克風和相機來實現人機交互,從而提供給客戶更加卓越的用戶體驗和個性化服務。
再比如物聯網(IoT)下的智能設備,雖然前端不直接參與此類設備的創建,但前端還能參與到顯示這些設備數據的應用程序開發當中去。
總之,隨著互聯網的不斷發展以及前端技術的不斷進步,越來越多的行業和領域可供前端施展拳腳。所以你還覺得前端沒有前景嘛?
最后做個總結,19年仍然值得選擇一份前端工作,但你至少需要:
對編程感興趣耐得住性子抱有好奇心有個好身體...如果相比于服務端來說,web前端確實是比較簡單一點,當然,這邊說的簡單是指入門。
入門Web前端,我通常分為三個階段:
一階段:學習HTML、CSS與JavaScript老實說,這一階段是最簡單的,也是很多人認為學習Web前端容易的一點,因為這三個語言都屬于簡單的,三個中最難的JavaScript對于其它語言來說,都要簡單上不了,因為他是腳本語言,所以不會有多難,和Python差不多。HTML也就多記幾個標簽,知道怎么用,CSS也就認為幾個選擇器和樣式,然后這階段你還學習了DOM知識,知道對節點進行操作,算是一階段入門了。
這一階段學習完成,然后就開始進入下了階段學習,開始進行一些基礎升級,就是我們說的二階段。
二階段:提升基礎能力,增加工具使用能力這階段,你要會使用IDE了,VSCode至少要會用,會使用AJAX發請求,JavaScript你得深入了解,你知道什么是閉包,Chrome瀏覽器開發者工具要會用,知道什么是EventLoop,什么是宏任務與微任務,什么叫發起異步請求,什么叫同步請求,最好還了解了函數式編程的概念,了解JS設計模式,能熟悉使用ES6來寫代碼,而不只是JS,還要了解ES7及之后版本的特性。
CSS你至少要對動畫有一定的了解。
了解這些就差不多了。
三階段:這時候就要了解工程化了二階段完成后,基本就可以寫些小腳本,小工具,如果要做現代化的Web前端開發,你得了解Web開發中關于模塊化、組件化的思想,你得先了解下什么是模塊化,AMD、UMD、CMD,然后再了解下Node.js和NPM,寫個小腳本發布到NPM上,然后學習下WebPack。這些了解完后,再從Vue、React和Angular中選一個來了解下,如果是初學者,我建議先Vue,曲線不那么陡峭。
大體上,上面三個階段就是入門三階段了,其中最簡單的是一階段。如果你喜歡,這三個階段對你來說都不難,如果你騎驢找馬,那保證你堅持不了三個階段,因為一碰到問題,你可能就會放棄了,所以建議如果選定了,就不要放棄,Web開發現階段還是比較有錢途的。