淺談國內主流的跨端開發框架
阿新 • • 發佈:2022-05-06
Flutter 是一款由 Google 開發的開源、跨平臺移動端開發框架。Flutter 使用 Dart 作為開發語言,這是一門簡潔、強型別的程式語言。它允許使用同一個程式碼庫構建高效能、漂亮的 iOS 和 Android 應用,Flutter還提供了兩套視覺庫,可以針對不同的平臺有不同的展示效果。此外,通過自定義的 Flutter 引擎可以將其嵌入到其他平臺。
一直以來,跨平臺工具採用以下兩種方法之一:
Flutter的特別之處
為了使移動端開發變得更好,Flutter 嘗試了一種不同的方法。它提供了開發人員工作的框架應用程式和能夠託管應用程式的可移植執行時的引擎。該框架依託 Skia 圖形庫而構建,提供了實際渲染時用到的 widgets,而不僅僅是原生應用控制元件的包裝器。就像 web 包裝器選項提供的那樣,該方法可以靈活的以完全自定義的方式構建跨平臺應用程式,同時還會提供流暢的效能體驗。與此同時,Flutter 自帶的豐富的 widget 庫以及一些開源的 widgets 使其成為一個功能豐富的平臺。
目前已經有不少大型專案接入Flutter,阿里的閒魚、頭條的抖音、騰訊的NOW直播,都將Flutter當做應用程式的開發語言。除此之外,還有一些其他中小型公司也在做。
2、Flutter 用 Dart,學習 Flutter的同時會使我們掌握一門新的語言,買一送一。
3、Flutter 天生支援 iOS 風格的控制元件, 稱為 Cupertino,這樣我們可以一套設計, 一套code跑在兩個系統上。
4、學習Flutter的過程會改變手機端app開發的思維,畢竟只有一個activity,全程跟個遊戲引擎一樣, 60幀每秒繪圖。
5、Hot reload,極大地加速了開發效率。
6、Flutter 提供 method channel 給 Android 和 iOS,其實可以只用 Flutter 來開發UI,其他底層邏輯可以封裝Android 和 iOS 分別的 lib package,然後直接Rx封裝寫回 method channel,也是一種新的開發模式。
7、效能更好, 相容性更好,開發起來更有樂趣,這才是程式設計師的人生,正好 Flutter 都能滿足。
- 在原生應用程式中嵌入 web view ,像構建網站一樣構建應用程式。
- 封裝原生平臺裡的控制元件併為它們提供一些跨平臺的引數。