移動互聯網歷經10余年的發展,期間app開發者遭遇移動設備的屏幕碎片化,系統版本分散,廠商定制泛濫等各種開發適配的痛點,因為把大量的精力耗費在不同平臺的實現以及解決各種兼容適配問題上,而導致項目周期長,成本增加,這與企業希望app低成本快速實現,按時上線的訴求是矛盾的。
跨平臺技術正是在這個過程中誕生和發展。
跨平臺技術消除了不同平臺之間的差異,開發者能夠通過一次編碼,同時開發出高性能和體驗的Android / iOS雙平臺app。傳app開發模式下需要4人日的工作,現在只需1日人即可完成,不僅大大降低企業的開發成本,還能保證項目如期的上線。也正是跨平臺技術具備開發效率高、體驗和性能不輸原生的特點,使其至今仍具有強大的生命力,持續為企業輸出價值。市面上主流的app產品,或多或少都在使用跨平臺技術架構進行開發,可以說跨平臺技術的歷史幾乎和移動互聯網本身的歷史一樣長。
如今跨平臺技術和生態趨于穩定,企業和開發者對跨平臺技術已形成共識,并大規模的應用到各種業務場景中。在此期間,跨平臺技術分離出兩個主要方向:
1、混合方向
即HTML5 + Native混合,也就是我們通常說的混合開發:通過HTML5快速實現app的UI布局、業務邏輯,在開發過程中涉及HTML5無法實現或者體驗不好的功能,則借助Native模塊來實現。
該模式的app引擎整體基于Webview架構,對前端開發者友好,背靠前端龐大的JavaScript生態,前端開發者無需學習新的技術即可開發app。該方向代表技術為Cordova、AppMobi、Ionic等。
2、中間語言(DSL)編譯方向
中間語言(DSL)編譯方向:開發過程要求使用特定的語法編寫app代碼,通過編譯環境將代碼編譯為Android / iOS原生app。開發者無需學習Android & iOS原生技術以及Java、Object-C、C/C++等復雜的開發語言即可完成app開發。
該模式的app引擎不依賴Webview,而是借助Virtual Machine,比如V8 / JSCore引擎,通過JS-Runtime實現更為復雜的代碼邏輯來滿足交互處理、通信和狀態管理,同時擴展和完善 JS / Native 的通信機制、封裝完善的組件和系統能力等,實現完全原生的渲染。該方向既延續了前端開發體系,又最大限度保證了渲染的性能,代表技術為React Native、Weex。
APICloud新產品前沿諜報
在跨平臺開發技術的演進之路上,APICloud與這瞬息萬變的時代一樣,從未停止過前進的步伐;時至2020年,APICloud DeepEngine在歷經多年深耕后即將重磅發布全新的3.0版本,該版本可同時支持【混合開發】與【中間語言編譯】兩種模式,允許開發者在同一個APP中自由選擇使用其中一種方式進行開發。
煥然一新的DeepEngine使用全翻譯式原理,將Javascript編譯為Native API,為APP提供完全原生的體驗和性能。