移動Web應用開發的現狀與未來
Web前端的起源
Web應用誕生:隨著GMail、Google Map等優秀Web應用出現,Ajax在2004年之后一度成為熱門話題。經過幾年的發展,一批以Prototype、Dojo、Ext為首的Ajax+UI的瀏覽器兼容框架不斷出現。UI和Web中間新增了一層以Javascript為核心,專門處理數據傳輸、Web交互等內容的開發層,Web前端。Web前端伴隨Web應用而誕生,并逐步走來。
Web宿主之爭:隨著RESTful Web Service潮流的發展,后臺服務也迅速實現了數據云端化,接口API化。但受IE壟斷和發展緩慢的影響,Web前端始終走不出瀏覽器能力不足和兼容性問題突出的困局。開發維護瀏覽器插件、Flash控件等更是無奈的選擇。Web前端往往因為需要兼容IE6、IE7、FF、有無插件、有無Flash等情況付出巨大開發代價。2006年,John Resig的jQuery框架從某個意義上解決了這個問題。我認為最大的突破在于讓老舊瀏覽器適配新的Web標準,滿足了開發者開發高效而兼容老舊瀏覽器的需要。
Web標準化之路:Google在2008年推出了Webkit核心的瀏覽器Chrome(后來也發布了ChromeOS)。隨著FireFox,Chrome,Safari,Opera等瀏覽器開始對HTML5和CSS3的深入支持以及性能的不斷優化,IE市場占有率的持續下滑。Web標準化終于等到了一個發展機遇。2010年,HTML5和CSS3被Webkit核心的Chrome、Safari絢麗地實現后,IE9也表示全面支持HTML5后。Web標準進入一個高速發展階段。隨后,瀏覽器GPU加速也瀏覽器廠商們所接受。在Web標準化、離線化、硬件化的浪潮中,Web應用逐漸具備了替代桌面應用條件和能力。Web前端開發也在逐步取代桌面應用客戶端開發。
移動Web應用背景
非智能機時代:Java和WAP是取代短信SP后的第一種移動互聯網實現方式。這個年代雖然荒蠻,但很純真。
前智能機時代:HP把一臺WinPPC的PAD增加電話功能,做成第一臺智能手機時。Windows Mobile和S60是這個時代的主角。基于手機系統的客戶端應用就是移動互聯網應用的最好形式。但是隨著系統版本的不斷升級,設備的差異不斷增大。手機客戶端應用開發同樣面臨著與Web前端開發一樣的兼容性開發效率和維護成本問題。
后智能機時代:隨著iPhone和Android(HTC、摩托羅拉、三星等)手機等的熱賣,兩個電子市場生態鏈逐步形成。再加上最近諾基亞和微軟和合作,電子市場生態鏈之爭拉開帷幕。客戶端應用成為了電子市場生態鏈的主角。不過隨著三方系統的競爭升級,也伴隨瀏覽器的不斷優化。先不論WP7,iPhone和Android陣營的瀏覽器都是webkit核心的,差異只在于硬件加速能力和設備資源的差異。這恰好也是移動Web應用的發展機遇。
移動Web應用開發
需求:
互聯網是個產品線豐富的產業,但不可能對所有產品都投入巨大開發成本。WAP能滿足基本使用需求,而客戶端應用滿足主線產品的高端需求。還有一大片中高端需求無法很好滿足。遺憾的是,限于開發成本,用戶沒有與其高端設備相匹配的非主線產品客戶端可用。
開發成本無法避免,但可以擇優。我們可以通過移動Web應用的方式來次優替代非主線產品客戶端。這也是廉價的移動應用實現方式。
現狀:
目前iOS和Android系統的瀏覽器都是webkit核心的,我們可以開發移動Web應用來滿足這塊需求。iOS支持硬件加速,Android系統也能滿足基本Webkit的API功能,適宜通過區分iOS來提供差異化服務。iOS的Mobile Safari有足夠能力提供webkitTransForm(圖形變換,3D變換支持硬件加速)、webkitTransition(CSS3動畫)、SQLite、LocalStorage(離線存儲)、 WebSocket(iOS 4.2+)服務。至于Android,因為需要兼容參差的低端設備,還是不建議使用復雜圖形變換和CSS3動畫,其它能力可以通過判斷能否支持來選擇使用。另外多點觸摸、重力感應、地理位置還是根據能否支持和需要來使用,主要用于優化用戶體驗,不影響基本交互方式。
未來:
移動Web應用的起點比PC Web應用的高,但適用范圍較窄。但移動Web應用將成為Web應用的一種延伸,從開發角度來看,應該是殊途同歸的。
小結
JavaScript的角色從誕生起的頁面粘合劑轉變成今天的Web應用開發語言,一路走來經過很多波折。有人喜歡他,有人討厭他,在崇拜和謾罵中成長過來。將來的路還很長,但迷霧已散去,前途是光明的。當中有無數人的付出汗水,也成就了少數應用的輝煌。不過他仍然是一個工具,為開發者服務,需要人們一起來優化他,使用他。
原文鏈接:http://www.cnblogs.com/gzterrytan/archive/2011/02/18/1957398.html
【編輯推薦】