Flutter博客專欄序章

在寫Flutter技術博客之前,先向大家安利下Flutter。當然,自己寫的沒有別人的好,下面主要內容總結於互聯網關於Flutter的文章。

關於Flutter

Flutter是一款Google推出並開源的移動應用開發框架,主打跨平臺、高保真、高性能。開發者可以通過Dart語言進行APP開發,只需要一套代碼就可以同時構建Android和iOS應用,並且可以達到與原生應用一樣的性能。

優秀特性

跨平臺自繪引擎

Flutter使用自己的高性能渲染引擎來繪製widget,保證了在Android和iOS上UI的一致性,也避免了對原生控件依賴而帶來的限制及高昂的維護成本。

Flutter使用Skia作爲其2D渲染引擎,其在字型、座標轉換,以及點陣圖都有着高效能且簡潔的表現,目前Google Chrome瀏覽器和Android均採用Skia作爲繪圖引擎。

高性能

Flutter APP採用Dart語言開發。Dart支持AOT(Ahead of time)即 “提前編譯”運行,運行性能極好。其次,Flutter使用自己的渲染引擎來繪製UI,佈局數據等由Dart語言直接控制,所以在佈局過程中不需要像RN那樣要在JavaScript和Native之間通信,這在一些滑動和拖動的場景下具有明顯優勢。

高效的Flutter引擎

Flutter引擎純由C++實現的,其中包括了Skia引擎、Dart運行時、文字排版引擎等。在代碼調用dart:ui庫時,調用最終會走到Engine層,然後實現真正的繪製邏輯。

優秀開發體驗

Flutter支持熱重載,可以幫助開發者快速地進行測試、構建UI、添加功能並更快地修復錯誤。在iOS和Android模擬器或真機上可以實現毫秒級熱重載,不需要重新編譯安裝新包查看修改代碼後的效果,並且不會丟失狀態。

對比類似流行的跨平臺框架

喜歡折騰移動跨平臺的開發的朋友應該對這些並不陌生,這裏就不一一介紹了。

下面大致列出特性對比表格:

技術類型 UI渲染方式 性能 開發效率 動態化 框架代表
H5+原生 WebView渲染 一般 支持 Cordova、Ionic
JavaScript+原生渲染 原生控件渲染 支持 RN、Weex
自繪UI+原生 調用系統API渲染 Flutter高, QT低 默認不支持 QT、Flutter

談談自己爲什麼要入坑Flutter

Flutter的誘惑力

Flutter比肩原生的性能,未來將支持Fuchsia OS上構建app,Flutter使用的Dart語言也將作爲Fuchsia OS的開發語言。可以說一門框架,一套代碼可以同時開發出 Android,IOS和Fuchsia三個平臺的應用,潛力可想而知,加上谷歌親兒子的身份,這些誘惑足以推動了我的興趣。

跨平臺是趨勢,大前端更是趨勢

Flutter很好的解決了如何節省成本,且快速、高效地開發app的問題。同時也很好的解決了目前市場上多數現營跨平臺框架開發的APP“體驗不好,界面卡頓,不流暢”的問題。

作爲一個開發者,接受和擁抱新技術、新變化是一種良好的態度。作爲一個Android開發者,爲了提高自己在慘烈的職位市場上的競爭力,Flutter技能加持也是一種很好的選擇。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章