我眼中的前端開發

大家都知道程序員是少見的低門檻高工資的職業,而前端工程師又比其他崗位入門更快,因此,很多人都想成為一個前端工程師。但是,在決定成為一個前端工程師之前,你瞭解前端是什麼嗎?

我眼中的前端開發

一千個人眼裡有一千個哈姆萊特,由於每個人的經歷和工作經驗不同,我敢說一千個前端程序員,對前端也有至少一百種定義,我也只是一個小菜鳥,不敢對前端下什麼權威定義,只是閒來無事,又覺得這個話題比較有趣而重要,希望可以跟大家一起共同探討一下。

狹義上的前端開發

-

讓我們先從狹義上的前端開始討論吧。前端工程師是一個比較新穎的概念,應該不會超過十五年的歷史,以前的前端開發工作大多是由現在的後端順手做了,沒什麼複雜度。前端的誕生,大概是隨著ajax和其他技術的推出,網頁逐漸複雜化,從而分離出來。

技術

一個對前端完全不懂的新人想要學習前端,要先學三板斧,JavaScript,HTML,CSS。這三個可謂是前端的基礎。打個不太貼切的比方,把網頁比作一個人的話,HTML是他的骨骼,CSS是他的皮膚,而JS讓這個人運動起來。

在搞懂這三個技術後,一般還會再學習一下JQuery和BootStrap,一個是對JS的封裝,降低了JS的使用門檻,另一個是一個UI庫,可以讓人快速的搭建樣式統一又不算難看的網頁。

工作領域

過去或者說是狹義上的前端就只是工作在瀏覽器上,IE6789,Chrome,Safari,因此他們關注的更多的是兼容性的問題。

關注點

狹義上的前端,可能更多的關注展現,做做官網,做做管理後臺,做瀑布流,輪播圖什麼的。

廣義上的前端開發

-

可以看出,狹義上的前端開發局限性比較大,一般人可以很快入門,很快看到天花板和瓶頸,再結合前端程序員比較容易入門,導致不少其他的崗位程序員對前端也有點歧視和偏見。這是我們就需要把視野打開,成為廣義上的前端。

廣義上的前端開發是怎樣的呢?我認為可能具有下面的幾個特點

工作領域廣泛

除了在移動端逐漸取代原生開發,越來越多的桌面應用在利用Electron技術開發,如VSCode,atom等

隨著nodejs的推出,這年頭的前端總要懂點express和koa,不然出門都不好見人。渲染的頁面工作被交給前端,後端程序員只提供API接口的開發模式也越來越流行。

關注業務和數據

現在是數據時代,我們要離數據更近,去處理和分析數據,原本前端程序員不被重視和天花板較低的一個重要原因就是隻重視展示,離數據和業務太遠。這也導致前端開發可被替代性強,待遇自然也上不去。然而隨著現代的開發模式如MVVM的引入,越來越多的數據邏輯處理被放在前端,前端的重要性也慢慢上來了。

更多展示場景

單純的展示並非沒有前途,只是我們不能停留在傳統的官網展示,要去擴充我們的應用場景,可以去涉足辦公軟件,直播,遊戲開發,VR,AR等場景。

工程化

前端要做的事情越來越多,越來越雜,工欲善其事,必先利其器,要完成各種各樣的需求,我們需要升級一下我們的手上武器。

想用es6怕瀏覽器不兼容?想用css3新特性怕出bug?讓babel和postcss幫你吧!還有各種圖片壓縮,模塊化打包合併,資源自動上傳到服務器等等工具。因此,前端開發不僅僅只是完成開發任務,還需要開發各種工具去提升開發效率和處理其他問題。

總結

-

在我看來,前端有兩個重點,一個是數據,另一個是展示。如何更好的處理數據以及進行豐富的展示並將其展示到更多的終端,是前端需要解決的問題。

我認為,前端的優勢在於,比起app需要讓用戶先耗費時間和流量去下載客戶端,用戶可以直接通過瀏覽器可以獲取數據,並通過連接進行分享。缺點是不適用於過於考驗性能的場景,然而機器的性能是會不斷提升的,適用於前端的領域也會越來越多,前端的明天也是光明的。


分享到:


相關文章: