天天看點

[轉] Web App & Hybrid App & Native App

原文位址:

[url]http://mobile.51cto.com/ahot-340633_all.htm[/url]

[url]http://dev.yesky.com/238/34657738.shtml[/url]

[b]Web App & Hybrid App & Native App 三者的差別[/b]

[img]http://ylib.sinaapp.com/resources/images/blog/Web%20App%20&%20Hybrid%20App%20&%20Native%20App.jpg[/img]

[b]Web App & Hybrid App & Native App 開發成本與使用者體驗比較[/b]

[img]http://ylib.sinaapp.com/resources/images/blog/Web%20App%20&%20Hybrid%20App%20&%20Native%20App%20compare.jpg[/img]

[b]常見 Hybrid App 開發平台[/b]

[color=red][b]PhoneGap(Cordova)[/b][/color]

  PhoneGap 是一款國外的開源移動開發平台。目前已經将核心代碼貢獻給 Apache cordova,它是基于 HTML,CSS 和 JavaScript 的,可以使用一些開源的架構比如 jQuery Mobile,Dojo Mobile,Sencha Touch 等等來提高使用者體驗,也提供了比較豐富的原生插件調用。

[b]特性:[/b]

  1. 可以使用 DreamWeaver 編碼,現在使用appMobi 提供的 xdk 進行模拟器開發。

  2. 代碼開源,開發者可以放心使用。

  3. 相容性,一次開發,多處運作。

  4. 使用JS+HTML5,成本低。

[b]優點:[/b]

  1. Native接口比較豐富,通過封裝的API可以直接通路硬體,比如說加速,相機,指南針,GPS,檔案通路等。

  2. 接口文檔描述非常詳細。

  3. 支援平台多,包括 iOS,Android,Blackberry,Symbian,bada,Windows Phone 7,Windows Phone 8 等。

[b]缺點:[/b]

  1. 需要針對相應的平台環境配置,進行編譯,打包測試,釋出等等。由于使用Hybrid 開發的使用者群,大部分是web開發者,對原生開發基本不了解,這無疑給每一個開發者增加了沉重的負擔,需要對各個平台的開發都要需要了解,對硬體等等都要配置,加大開發成本。

  2. 使用效果啟動慢,頁面切換響應慢,資料請求慢。

  3. 文檔雖比較詳細但是基本是英文,對于國内大部分使用者英文水準較差的是比較大的挑戰。

  4. 因為是國外的架構,技術支援不夠到位,出現問題,無法排解,成為技術攻關的難點。

[color=red][b]AppCan[/b][/color]

  AppCan是本土移動開發中使用最廣的移動平台,網絡輿論而言,AppCan是PhoneGap的中國化,但是從對AppCan實際使用,以及轉向移動開發的朋友們互相交流回報,他們是截然不同的兩個移動平台,AppCan不僅封裝了類似于PhoneGap的本地調用功能,而且封裝了uexWindow多視窗機制,實作了移動端的iframe效果,雖然不是開源項目,但一直都有面向開發者的免費版,并且也有定位于企業使用者的企業版套裝。

[b]特性:[/b]

  1. 提供的內建開發環境的IDE進行模拟器開發。

  2. 相容性,一次開發,多處運作。

  3. 使用JS+HTML5 ,成本低。

  4. 線上打包。

  5. 代碼加密保護機制。

[b]優點:[/b]

  1. 支援線上上傳證書打包,對于不了解蘋果,以及Android 環境開發的人是福音。

  2. 支援更多的原生調用,比如UI控件的封裝,通訊類(socket),地圖,支付寶等更多的原生控件支援。

  3. 擁有統一資料統計平台,便于營運管理開發的應用。

  4. 完善的技術支援,官方論壇以及Q群建設較為完善,使開發者更好的進行交流溝通。

[b]缺點:[/b]

  1. 雖然有中文的開發文檔,但描述比較簡單,希望他們豐富他們的API文檔。

  2. 免費版本不支援自定義插件(據說企業版可以自定義插件)。

  3. 暫時隻支援iOS,Android兩大平台,不知道什麼時候推出Windows Phone 8?

  4. 許多功能需要企業版才能實作,不過是收費的。

[color=red][b]Titanium[/b][/color]

  Titanium移動平台是所有移動開發平台中比較另類的,它将JavaScript和本地庫連結在一起,編譯成位元組碼,針對iOS以及Android兩個平台分别建構一個軟體包。應用程式使用HTML,JavaScript和CSS進行開發,并支援PHP,Ruby和Python。應用程式可以使用 Appcelerator API通路本地特性。并提供Appcelerator Studio開發環境,由于編譯成本地代碼,是以使用者體驗是最好的。

[b]特性:[/b]

  1. 針對不同平台生成對應的原生包 。

  2. 供Appcelerator Studio開發。

[b]優點:[/b]

  1. 針對JS解析生成原生控件,基本達到純原生的使用者體驗。

  2. 支援自定義插件。

[b]缺點:[/b]

  1. API文檔為英文,并且比較簡單,對國内使用者使用有一定挑戰。

  2. 跟PhoneGap 同樣,國外架構,技術支援困難。

  3. 支援Android,iOS,黑莓平台。

  4. 環境需要使用者自己搭建比較複雜。

[color=red][b]appMobi[/b][/color]

  appMobi推出了全新開發工具XDK,這個工具使得開發者可以使用HTML5建構網絡和移動平台的應用程式,可以進行螢幕仿真調試、裝置實際調試和遙控調試等。

[b]特性:[/b]

  1. 使用XDK 進行開發。

  2. Html5+CSS+JS。

  3. 一次開發,多處運作。

[b]優點:[/b]

  1. 本地接口較為豐富,并且推出有遊戲加速引擎,主要包括實體引擎、離線和動态緩存、媒體播放器、驗證和加密、增強現實、二維碼和QR掃描、更好的顯示支援。

[b]缺點:[/b]

  1. 國外架構,技術支援差。

  目前已經有很多移動開發公司把PhoneGap進行了封裝,提供打包、快速模闆等開發環境。但是由于PhoneGap本身的局限性,如果要做長期的商業項目還有很長的路要走。而國内使用最多的AppCan,它從多個角度多種模式進行開發,可以滿足國内從普通網站維護者到Web專業開發者等對于移動應用的需求。加上良好的技術支援,目前已經成為衆多開發者的首選架構。而appMobi, Titanium移動平台,不同的使用者根據自己的需求也有相應的選擇。

  Hybrid App,一個特定時期的特定産品,不同的期望不同的選擇。

繼續閱讀