我為什麼看好Hybrid - 獻給Web前端工程師
Web從最開始,用html標籤這種最簡單的方式搭建入口網站、論壇,那時候能做個網站感覺很牛叉的樣子。後來又有了Ajax方式,可以動態的獲取資料,讓網頁能不重新整理而完成更新。之後又有了HTML5,結合JS、CSS3到達另一個高度,通過Web可以用很炫的方式實現不錯的功能效果。這是PC時代;現在到了移動網際網路時代,有人唱衰Web,也有人高唱Web。不管怎麼樣,Web在以它的方式而野蠻生長著。生長的方式不是以我們的主觀意願的,而是這個時代需要Web,需要這種方式來實現一些東西,人們希望有這麼一個東西能像一個樹,在這個炎熱的夏天提供一處陰涼,願意為它施肥澆水,讓它再大些再高些。因為需要所以產生,而不是因為存在所以可用。
1、到達一個拐點
技術上:從原先的一根筋變成現在的兩頭堵了。在2014年10月底,W3C宣佈HTML5正式定稿。這個時間,不晚不早,硬體效能更強、手機OS迭代速度下降。優勢是跨平臺,更新及時。可用和原生程式碼結合實現互相的呼叫,機制上是完全可以的。只是看你用不用而已。其中OS X Mavericks和iOS 7引入了JavaScriptCore庫,它把WebKit的JavaScript引擎用Objective-C封裝,提供了簡單,快速以及安全的方式接入世界上最流行的語言。不管你愛它還是恨它,JavaScript的普遍存在使得程式設計師、工具以及融合到OSX和iOS裡這樣超快的虛擬機器中資源的使用都大幅增長。
生態上:很多的公司和個人在Web這個領域一直的添磚加瓦,不管是Cordova、AppCan、ApiCloud、trigger.io、node-webkit、ReactNative等等,都在從各個方向突圍,讓大家看到了希望。
硬體上:系統版本和瀏覽器已經可以很好的支援html5和css3硬體加速。Google在2013年底釋出的Android4.4,內建的Webview不再是蹩腳的Android WebKit瀏覽器,而是Chromium,效能大幅提升。從最新的Android 5.0開始,Webview可以通過GooglePlay Store實時更新,和Chrome的升級保持一致,使用者就可以不刷機享受到最新的瀏覽器引擎;再看Apple方面,2012年iPhone5釋出後,HTML5在iOS上的表現已令人滿意,Safari獨家的JavaScript加速引擎Nitro不再那麼重要,不過在iOS 8釋出後,蘋果還是很識趣地取消了三方程式呼叫Nitro的限制,現在任意瀏覽器或應用呼叫iOS的UIWebview都可以利用Nitro加速,這樣在前端使用JS做大型運算也成為可能。
實現上:具體到這個層面,最初是直接嵌網頁的方式;後來是打包JS、HTML、CSS到本地;這兩種方式都有優缺點,不能滿足我們要求載入快而且實時更新。於是出現了第3種,可以用增量更新zip包的方式來實現本地載入和快速更新的目的。這些已經在超級app上實現,並且效果很好,下面內容有講到。
2、需求要求這樣
而對於開發者而言,開發者為什麼不願意開發WP版本,很多時候是因為工作量太大,除了版本適配,解析度調整等,一旦有新版本推出,在原生App中開發者不得不等待多達兩週時間去接受稽核。另外內容維護上也很麻煩,這也是為什麼有些媒體開始放棄原生App鼓勵讀者使用WebApp的原因。除此之外,跨平臺在多屏時代給開發者非常痛苦的體驗,人們都期待當年Java的一次編譯處處執行的理想情況。HTML5目前正在扮演一個開發者救星的角色。
全新的網際網路入口超級App+WebApp的時代來臨
你手機裡裝了多少App,最常用的有哪些?
可能最多的回答是,我用「微信、QQ,或者其他瀏覽器」等等所謂的超級App。
在超級APP裡Web正在扮演著重要的角色,發揮她的快速、跨平臺、輕的特性。
3、已經被驗證過
手Q中群部落、吃喝玩樂、主題中心等核心業務。微信的[發現]。新版支付寶的[商家]、京東、淘寶這些電商更是用到了各處。這些超級APP已經在某些場景下用的不亦樂乎,發揮Web的優勢,為我們所用。
4、農村包圍城市
從PC到移動網際網路時代,Web正在符合時代的需求而生長著。沒有一種語言是像Web一樣,隨著時代的發展而不斷的修訂,並能符合這個時代發展的速度。Java做不到、Objective-C也做不到。雖然出身草根,但是像水一樣,隨形而動,生命力旺盛。還是讓我們擁抱變化,擁抱草根出身的Web。
獻給一直堅守在Web前端的工程師們
擴充套件閱讀:
相關文章
- 我為什麼看好騰訊START雲遊戲遊戲
- 我為什麼不看好智慧路由創業路由創業
- 為什麼我不想成為Web前端程式設計師Web前端程式設計師
- Web前端怎麼學?如何成為Web前端工程師?Web前端工程師
- Web前端工程師需要會什麼?Web前端工程師
- Web前端工程師需要什麼學歷Web前端工程師
- 說說我為什麼看好Spring Cloud AlibabaSpringCloud
- 寫給想成為前端工程師的同學們——前端工程師是做什麼的?前端工程師
- 前端,我為什麼不要你前端
- 我為什麼不看好蘋果推出的遊戲訂閱服務?蘋果遊戲
- [譯] 我們為什麼看好加密收藏品(NFT)的前景加密
- 「風之語」我為什麼看好華為鴻蒙作業系統鴻蒙作業系統
- 為什麼我們的web前端變的越來越複雜Web前端
- 什麼是Web workers?為什麼我們需要他Web
- 我為什麼不看好Apple Arcade訂閱制付費?APP
- 為什麼Web前端語言只有JavaScript?Web前端JavaScript
- [譯] 為什麼我們需要 Web 3.0Web
- 前端工程師要做什麼?前端工程師需要什麼根本技能?前端工程師
- 長沙Web前端培訓:優秀的Web前端工程師需要具備什麼?Web前端工程師
- 轉行Web前端工程師,需要什麼程式語言?Web前端工程師
- 怎麼做優秀前端工程師 Web前端學習路線是什麼前端工程師Web
- 什麼是Web前端?Web前端要學習什麼內容?Web前端
- 為什麼IT入門推薦首選HTML5大前端?Web前端工程師到底好在哪?HTML前端Web工程師
- 為什麼前端工程師需要關注設計前端工程師
- web前端是什麼?Web前端
- Web前端值不值得去學?Web前端工程師面試需要注意什麼?Web前端工程師面試
- 前端工程師成長之多看好書前端工程師
- 我為什麼鼓勵工程師寫部落格工程師
- Web軟體開發工程師的要求是什麼?Web前端 VS Web後端Web工程師前端後端
- 為什麼要貢獻開源
- 從前端工程師到前端架構師, 我們經歷了什麼?前端工程師架構
- 為什麼幾乎整個網際網路行業都缺Web前端工程師?行業Web前端工程師
- 我認為 web3 是什麼(大白話 web3)Web
- Web前端是什麼?Web前端包括哪些技術?Web前端
- 什麼是 SAP UI5 的 Hybrid Web ContainersUIWebAI
- 在公司裡,web前端開發工程師主要是做什麼的?需要掌握什麼Web前端工程師
- React Hooks 可以為我們帶來什麼,及為什麼我覺得React才是前端的未來ReactHook前端
- 為什麼說現在是成為前端工程師的好時代!?前端工程師