JavaScript >> Javascript 文檔 >  >> Tags >> CSS

比較構建混合移動應用程序的頂級框架

就在幾年前,通過 JavaScript 開發移動應用程序只不過是一個古怪的實驗。無需使用 Java 和 Objective C 即可構建 iOS 和 Android 應用程序的想法似乎吸引了許多 Web 開發人員。現在,我們擁有大量框架,讓我們比以往任何時候都更接近於僅使用 Web 技術創建原生移動體驗。

什麼是混合移動應用程序?

混合應用程序只是一個常規的移動優化網站,用 CSS、HTML 和 JavaScript 編寫,顯示在 webview 中(這基本上是一個精簡的 web 瀏覽器)。優點是您只需要編寫一個應用程序,在大多數情況下無需修改即可在 Android、iOS 和 Windows Phone 上運行。本文中列出的大多數框架都使用 Cordova 或 PhoneGap 執行此操作,它們為您提供了與 JavaScript 中的設備 API 的橋樑。

在本文中,我們將比較用於構建混合和原生移動應用程序的最流行的 JavaScript 框架。 滾動到文章底部查看分數。

1。離子

Ionic 是我們列表中最受歡迎的框架,並且可能是許多開發人員的首選。您可以使用框架的 CSS 部分來創建具有原生外觀的設計,但要充分利用 Ionic 的潛力,最好將其與 AngularJS 配對。使用 Ionic 獲得的一大好處是命令行界面,它充滿了很棒的功能,包括集成的模擬器和基於 Cordova 的應用程序打包器。

優點:

  • 使用預定義的組件
  • 很棒的社區
  • 具有許多有用功能的命令行界面

缺點:

  • 你需要了解 AngularJS 才能做任何復雜的事情

2。溫泉界面

這是一個開源框架,允許開發人員通過組合具有原生外觀的組件來構建應用程序。它使用起來相當簡單,可以使用或不使用 AngularJS,並且具有出色的文檔,其中包含許多用於最常見應用程序結構的示例和佈局。 Onsen UI 的一個缺點是它目前只提供 iOS 主題,儘管下一個版本承諾支持 Material Design。

優點:

  • 使用預定義的組件
  • 帶有示例的優秀文檔

缺點:

  • PhoneGap/Cordova 構建器不包括在內,但受支持
  • 不支持 Material Design(目前)

3。框架 7

Framework 7 很酷的一點是它完全與框架無關(沒有像 Angular 或 React 這樣的外部依賴項),並且仍然設法使應用程序看起來和感覺是原生的,並具有適當樣式的組件和動畫。任何了解 HTML、CSS 和 JavaScript 的人都可以創建應用程序,而無需使代碼複雜化。 Framework 7 不包含任何用於仿真或應用程序打包的工具,因此您需要將其與 Cordova 或 PhoneGap 結合使用。

優點:

  • 使用簡單,僅依賴於 HTML、CSS 和 JavaScript
  • 表現不錯
  • 可以與任何選擇的 JavaScript 框架結合使用

缺點:

  • PhoneGap/Cordova 構建器不包括在內,但受支持

4。反應原生

顧名思義,React Native 的目的是構建合適的原生應用,而不是創建在 Webview 中運行的混合應用。然而,開發仍然完全通過 JavaScript 和 React 完成。這個框架不是為 Web 開發的初學者量身定制的,但從好的方面來說,它背後有一個龐大的社區,可以在各個方面為您提供幫助。最近該框架推出了對 Android 的支持,因此您可以擁有真正的跨平台應用程序。

優點:

  • 類原生性能
  • 龐大的社區

缺點:

  • 陡峭的學習曲線
  • 開發工具目前僅適用於 OS X

5。 jQuery 移動

作為所有移動框架的祖父,jQuery Mobile 不會嘗試製作看起來像 Android 或 iOS 的應用程序。相反,它的目的是幫助開發在所有移動瀏覽器(包括 Windows Phone、Blackberry 和 Symbian 等老款)上同樣運行良好的 Web 應用程序。因此,它非常輕量級,僅依賴於 jQuery,並且非常容易學習,同時仍提供良好的觸摸識別和 PhoneGap/Cordova 支持。

優點:

  • 支持多種移動瀏覽器
  • 使用簡單

缺點:

  • 與 iOS 或 Android 不同的過時樣式
  • PhoneGap/Cordova 構建器不包括在內,但受支持

6。原生腳本

Native script 最大的特點是它允許您在 JavaScript 中編寫應用程序的功能,然後將相應地轉換為 Android、iOS 和 Windows Phone。打包後,編譯後的應用程序以本機方式啟動,無需在瀏覽器中打開和運行。該框架確實需要一些編碼技能,但通過廣泛而深入的文檔來彌補這一點。

優點:

  • 一次編寫,隨處使用 接近。
  • 很棒的文檔

缺點:

  • 陡峭的學習曲線
  • 小型社區

7。著名

Famous 擁有獨特的 Web 和移動開發方法。它將 DOM 樹(您的 HTML)與 WebGL 相結合,在畫布中顯示所有內容,類似於 HTML 遊戲引擎所做的。這種新穎的技術允許框架以 60 fps 的速度運行您的應用程序,這與大多數原生應用程序一樣流暢。遺憾的是,這個項目不再積極開發,也沒有好的文檔可供參考。

優點:

  • 類原生性能

缺點:

  • 不再積極開發
  • 文檔不完整
  • 小型社區

破敗

結論

沒有最好的框架 - 它們都有其優點和缺點,您可以根據您打算使用它們的目的來決定。

我們希望這個快速比較對您有用!如果您對列出的任何框架或類似框架有經驗,請發表評論並分享您對混合應用程序開發的看法!


Tutorial JavaScript 教程
  1. Disqus 評論無法在本地主機上加載?

  2. 更多關於 Gulp 和圖像的 SEO

  3. Clarkio 直播筆記:在 Node.js 應用程序中設計和測試新功能

  4. NodeSource 的新篇章

  5. JavaScript - ===vs ==運算符性能

  6. 沒有 React 的 useState

  7. 如何輕鬆創建漂亮的 SVG 動畫

  1. 排隊?闕?

  2. Node.js 面試題

  3. oData 查詢中如何處理特殊字符?

  4. 為什麼我成為並且仍然是 Web 開發人員

  5. 遞歸入門

  6. Visual Studio Futures:隨時隨地的智能生產力和協作

  7. 評估您的 npm 項目健康狀況並致電醫生!

  1. NestJS 黑客馬拉松初學者

  2. 6 個需要避免的 JavaScript 初學者錯誤!

  3. 跟進我的偽代碼承諾

  4. DOM 簡介