02.19 十大混生開發框架

混合應用程序增長的最大原因是,您只需編寫一次混合移動應用程序,即可在每個平臺上運行它,而無需付出任何額外的努力。通過使用移動HTML5 UI框架提供的組件,將應用程序設計為常規Web應用程序,即適合不同屏幕尺寸的自適應Web應用程序。通過諸如Cordova(PhoneGap)提供的原生JavaScript API可以訪問諸如Camera或Accelerometer之類的原生硬件組件。然後,您的應用程序可以編譯到特定於平臺的版本包併發布到應用商店。


Ionic

在過去的幾年中,ionic確立了自己在混合移動應用程序開發領域的領導者的地位。Ionic團隊通過適應最新趨勢,在競爭對手中一直保持著快速穩定的更新。Ionic是免費使用和開源的,其生態系統已經變得相當龐大,您可以輕鬆地從社區中找到大量的開發資源,以立即開始使用。

Ionic框架集成了Angular,這讓它的開發可以非常高效。與大多數其他混合應用程序框架一樣,Ionic也利用Cordova將其本地化為iOS,Android,Windows Phone和其他平臺。

Ionic框架是可維護和可伸縮的,使用簡潔易讀的標記,並隨附高度移動優化的CSS(由Sass提供支持),HTML和js組件庫。它還具有豐富的工具和手勢,以確保輕鬆開發交互式應用程序。


十大混生開發框架


Onsen UI

Onsen UI相對較新,但卻給Ionic帶來了激烈的競爭。它是開源的。Onsen UI的大多數UI組件也使用Angular指令和Topcoat框架。

十大混生開發框架

對於jQuery愛好者,它附帶了基於jQuery的組件。可以選擇不使用Angular而是使用jquery來構建混合應用程序。Onsen UI具有大量現成可用的組件,開箱即用的響應能力使您可以構建應用程序的移動,平板和桌面版本,允許您使用HTML5和JavaScript編寫應用程序並通過Phonegap和Cordova推送到本地化。

Onsen UI帶來的易用性,靈活性,語義標記和性能給我個人留下了深刻的印象。

Sencha Touch

Sencha Touch是企業級產品,用於使用HTML5和JavaScript構建跨平臺的端到端移動Web應用程序。您可以將其稱為商業領域(主要是企業)中移動應用程序開發平臺的老大哥。Sencha有與Sencha Touch緊密配合的多種產品,其中大多數產品價格不菲。

對於個人開發人員和自由職業者而言,Onsen UI將是一個更好的選擇,但對於企業而言,Sencha Touch可以輕鬆帶路。

十大混生開發框架

ExtJS是流行的JavaScript框架之一,它是Sencha touch平臺的核心,該平臺可幫助創建具有接近本機體驗的高性能應用程序。Sencha Touch可以打包用於所有主要平臺(包括iOS,android,Windows Phone和Blackberry)的具有原生外觀的小部件。Sencha還具有可拖放的HTML5可視化應用程序構建器,其中包含大量隨時可用的模板。還可以構建自定義組件並將其添加到庫中,以在各個應用程序之間重用。

Kendo UI

Kendo UI是用於使用HTML5,JavaScript和CSS構建任何類型的Web應用程序或混合移動應用程序的另一個框架。它高度依賴jQuery,並附帶了70多種隨時可以使用的jQuery小部件。Kendo UI也允許與Angular集成,並支持Bootstrap UI框架。


十大混生開發框架

Kendo UI還包含內置的即用型主題包,包括具有材質設計外觀和感覺的主題。還有一個主題生成器可用於創建自定義主題,這是Kendo UI框架的最大優勢之一。

Kendo UI由Telerik維護和支持,並帶有開源和商業許可選項。當然,開放源代碼在功能上會受到一些限制,並且您不會獲得專門的技術支持。

像Sencha一樣,Kendo UI在企業中也很受歡迎。它擁有龐大的客戶群,包括索尼,美國航空航天局,微軟,沃爾沃和東芝等公司。


Framework 7

Framework 7在iOS混合應用和移動應用程序開發中處於領先地位。雖然Framework 7不提供對構建跨平臺混合應用程序的支持。但這絕對是iOS混合應用程序開發的最佳,功能最豐富的框架。

十大混生開發框架

Framework 7的主要優點在於,它使開發人員能夠僅使用CSS,JavaScript和HTML來構建iOS應用程序,這是Web開發人員已經知道的技術。Framework 7非常接近本機iOS應用程序,甚至提供了開箱即用後退等功能。還有許多其他可供使用的UI元素,包括列表視圖,媒體列表,側面板,模式等,這些元素可以按原樣使用,而無需使用JavaScript。

Famo.us

Famo.us是另一個強大的html5應用程序開發框架,目標是在混合應用程序中提供近乎本機的體驗。famo.us和其他混合html5框架之間的主要區別在於,它更多地關注圖形渲染,2d和3d,因此更適合遊戲開發。

十大混生開發框架

Trigger.IO

Trigger.io有自己的平臺,可以彌補html5開發與本機訪問之間的差距。他們聲稱它產生的混合應用程序的性能要比基於Cordova的應用程序好得多。

Trigger.io使用偽造的JavaScript API訪問像加速度計和攝像機等本地函數。

Flutter

從Github上來看,目前Flutter活躍用戶正在高速增長。Flutter的文檔、資源也越來越豐富,開發過程中遇到的很多問題都可以在Stackoverflow或其github issue中找到答案。

現在Google正在大力推廣Flutter,Flutter的作者中很多人都是來自Chromium團隊,並且github上活躍度很高。另一個角度,從今年上半年Flutter頻繁的版本發佈也可以看出Google對Flutter的投入的資源不小,所以在官方技術支持這方面,大可不必擔心。

十大混生開發框架

Flutter的熱重載可幫助開發者快速地進行測試、構建UI、添加功能並更快地修復錯誤。在iOS和Android模擬器或真機上可以實現毫秒級熱重載,並且不會丟失狀態。這真的很棒,相信我,如果你是一名原生開發者,體驗了Flutter開發流後,很可能就不想重新回去做原生了,畢竟很少有人不吐槽原生開發的編譯速度。

React Native

React Native產出的並不是“網頁應用”, 或者說“HTML5應用”,又或者“混合應用”。 最終產品是一個真正的移動應用,從使用感受上和用Objective-C或Java編寫的應用相比幾乎是無法區分的。 React Native所使用的基礎UI組件和原生應用完全一致。 你要做的就是把這些基礎組件使用JavaScript和React的方式組合起來。

十大混生開發框架

React Native完美兼容使用Objective-C、Java或是Swift編寫的組件。 如果你需要針對應用的某一部分特別優化,中途換用原生代碼編寫也很容易。 想要應用的一部分用原生,一部分用React Native也完全沒問題 —— Facebook的應用就是這麼做的。

uni-app

uni-app 是一個使用 Vue.js 開發所有前端應用的框架,開發者編寫一套代碼,可發佈到iOS、Android、H5、以及各種小程序(微信/支付寶/百度/頭條/QQ/釘釘)等多個平臺。

十大混生開發框架

案例多,插件豐富,App端支持weex原生渲染,可支撐更流暢的用戶體驗。


總結

混生道路千萬條,條條都是不歸路。雖然混生在開發效率和便捷性上有著超乎想象的能力,但是親生的就是親生的,這個是永遠不會改變的。

我這裡並不是說混生就不行,而是說各有各的好,有舍才有得,你捨棄了一些東西,必然上天會給你一些東西作為補償,有些東西只有親身經歷過才知道究竟好不好,否則道聽途說和親眼所見未必都是真的。


分享到:


相關文章: