前端歷史演變

在選擇學習Webpack之前,我們先了解一下前端整個發展歷程。

image.png
2014年初,我加入互聯網開發行業,隨沒經歷前端刀工火種的時態,5年的時間,前端技術的百家齊放很是眼花繚亂。我也從套頁面後端工程師、jquery寫效果到現在的小程序、node、vue轉變成一個純前端。現在回顧一下前端到底發生了哪些歷史變化。

靜態頁面 1990~2005

互聯網發展早期,前端只負責寫靜態頁面,純粹的展示功能,JavaScript的作用也只是增加一些特殊效果。這種靜態頁面不能讀取數據庫,爲了使Web更加充滿活力,以PHP、JSP、ASP.NET爲主的動態語言相繼誕生。
這使頁面能夠獲取數據並不斷更新,是前後端混合開發模式開端,所有的前端代碼和前端數據都是後端生成的,隨着後端代碼的龐大和邏輯越來越複雜,相繼的MVC發展起來。這時後端大多采用MVC模式開發,前端只是後端MVC中的V(視圖);
從web的誕生到2005,一直處在_後端重前端輕_的狀態。

AJAX階段 2005

2004年AJAX技術的誕生改變了前端的發展歷史。以Gmail和Google地圖這樣革命性的產品出現,使得開發者發現,前端的作用不僅僅是展示頁面,可以管理數據和用戶互動。解決一些糟糕的用戶體驗,前端頁面要想獲取後臺數據需要刷新整個頁面。
依稀記得前幾年,依託強大的Jquery,一頁面的javascript代碼使用ajax發送請求渲染DOM的情景。
前端開始慢慢向後端靠攏

NODEJS 的爆發 2009

2009年Ryan Dahl利用Chrome的V8引擎打造了基於事件循環的異步I/O框架。
NODE的誕生,使javascript在服務端的無限可能,更重要的是它構建了一個龐大的生態系統。

2010年1月,NPM作爲node的包管理系統首次發佈。開發人員可以依照規範編寫nodejs模塊,發佈到npm上,供其他開發人員下載使用。截止目前2019年6月8日,NPM包數量有1,003,262,是世界上最大的包模塊管理系統

Node.js 給開發人員帶來了無窮的想象,JavaScript 大有一統天下的趨勢

前端MV**架構階段 2010

隨着 HTML5 小程序 的流行,前端再也不是人們眼中的小玩意了,應用功能開發逐步遷移到了前端,前端的代碼邏輯逐漸變得複雜起來。
2010年10月Backbone MVP架構發佈。
2010年10月Angular MVC->MVVM
2013年05月React開源 MVVM
2014年07月Vue MVVM

隨着這些 MV* 框架的出現,網頁逐漸由 Web Site 演變成了 Web App,最終導致了複雜的單頁應用( Single Page Application)的出現。
隨着 SPA 的興起,2010年後,前端工程師從開發頁面(切模板),逐漸變成了開發“前端應用”(跑在瀏覽器裏面的應用程序)。

javascript 開發App

隨着 iOS 和 Android 等智能手機的廣泛使用,移動瀏覽器也逐步加強了對 HTML5 特性的支持力度。

Web APP,即移動端的網站。一般泛指 SPA(Single Page Application)模式開發出的網站。將頁面部署在服務器上,然後用戶使用各大瀏覽器訪問,不是獨立APP,無法安裝和發佈。

Hybrid App,即混合開發,也就是半原生半Web的開發模式,有跨平臺效果,實質最終發佈的仍然是獨立的原生APP。

React Native App,Facebook發起的開源的一套新的APP開發方案,使用JS+部分原生語法來實現功能。

May 7, 2019谷歌發佈 Flutter for web,正式宣佈 Flutter 成爲全平臺框架,支持手機、Web、桌面電腦和嵌入式設備。現在學跨平臺應用開發,第一個要看的可能不是 React Native,而是 Flutter。

image.png
今天的前端已經不再是網頁誕生之初的樣子,每天都有新的技術框架涌現。
GitHub + NPM/BOWER + ES6/ES7/Babel/TypeScript + HTML5 + CSS3/SASS/LESS/PostCSS + React/Vue/Angular + Webpack/Browserify/Gulp/Grunt + Node.js/Express/KOA + Hybrid

這就是今天的前端。

參考:
前端發展簡史
全平臺框架 Flutter(英文)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章