此框架旨在將常規(guī)的Flutter項(xiàng)目中使用到的通用(與業(yè)務(wù)無(wú)關(guān))的功能從剝離出來(lái),構(gòu)成Flutter開(kāi)發(fā)項(xiàng)目的框架,在開(kāi)發(fā)新的Flutter項(xiàng)目時(shí),可以直接引用本項(xiàng)目 import 'package:framework/framework.dart' 來(lái)使用框架中相關(guān)的功能,提升開(kāi)發(fā)效率。 github項(xiàng)目地址
成都地區(qū)優(yōu)秀IDC服務(wù)器托管提供商(成都創(chuàng)新互聯(lián)).為客戶提供專業(yè)的眉山聯(lián)通機(jī)房,四川各地服務(wù)器托管,眉山聯(lián)通機(jī)房、多線服務(wù)器托管.托管咨詢專線:18980820575
此框架目前包含以下功能模塊:接口請(qǐng)求API模塊、消息提示模塊、路由模塊、統(tǒng)一錯(cuò)誤處理、日志模塊、屏幕適配測(cè)試、自定義UI組件庫(kù)、本地存儲(chǔ)模塊構(gòu)成
Flutter是一個(gè)移動(dòng)應(yīng)用程序的軟件開(kāi)發(fā)工具包(SDK),具有以下特征:
跨平臺(tái)應(yīng)用的框架,沒(méi)有使用WebView或者系統(tǒng)平臺(tái)自帶的控件,使用自身的高性能渲染引擎自繪
簡(jiǎn)化版的瀏覽器,最大限度在android和ios上統(tǒng)一UI,包括業(yè)務(wù)邏輯和用戶體驗(yàn)
開(kāi)發(fā)語(yǔ)言使用dart,結(jié)合C, C++, 和Skia(2D渲染引擎)構(gòu)建
支持hot reload,包含著完整的控件和工具鏈
一切皆控件,控件是每個(gè)Flutter應(yīng)用程序的基本構(gòu)建塊,與分離視圖、控制器、布局和其他屬性的框架不同,F(xiàn)lutter具有一致的統(tǒng)一對(duì)象模型:控件。一個(gè)控件可以定義:結(jié)構(gòu)元素(比如按鈕或菜單)、風(fēng)格元素(比如字體或顏色方案)、布局的方面(比如填充)、一些業(yè)務(wù)邏輯等
組合大于繼承,控件本身通常由許多小型、單用途的控件組成,結(jié)合起來(lái)產(chǎn)生強(qiáng)大的效果,類的層次結(jié)構(gòu)是扁平的,以最大化可能的組合數(shù)量
強(qiáng)化版的WebView,框架僅提供一個(gè)View層,大部分功能要依賴原生
目前只能夠運(yùn)行大部分Dart代碼(不能引入dart:mirrors或dart:html庫(kù))
[img]最近在做的一個(gè)項(xiàng)目,項(xiàng)目的前期采用Weex開(kāi)發(fā)。但是隨著交互復(fù)雜度的增加,Weex一處開(kāi)發(fā)多處多處運(yùn)行的特征并沒(méi)有很好的體現(xiàn),相反很多時(shí)候我們還是需要做IOS和Android的適配。如今火熱的Flutter相比Weex和Rn來(lái)說(shuō),給出了更好的跨平臺(tái)解決方案。所以我們?cè)O(shè)計(jì)了一套基于Weex實(shí)現(xiàn),底層跑在Flutter Engine上的框架。
底層的Runtime采用isolate engine,框架業(yè)務(wù)邏輯,Dom的解析邏輯和Render邏輯都跑在這里。
渲染引擎采用Flutter的Skia,徹底剝離了Android和IOS的差異性.
將Weex VirsualDom的解析都替換成Flutter Widget.
設(shè)計(jì)基于Weex2Dart的Brider,使JS和Dart可以相互調(diào)用
weex-demo的性能展示
release環(huán)境下采用AOT模式,性能會(huì)有質(zhì)的飛躍。
Android-Release版本只有10m大小
相比Weex和Rn具有更好的性能,同時(shí)具有更好的跨平臺(tái)性
相比Flutter,具有動(dòng)態(tài)部署的能力(Flutter Release采用AoT模式并沒(méi)有動(dòng)態(tài)部署的能力,即使Debug版本也只是開(kāi)發(fā)環(huán)境下才有動(dòng)態(tài)化能力并沒(méi)有可以實(shí)施項(xiàng)目的能力)
只需要會(huì)Weex開(kāi)發(fā)或則Rn開(kāi)發(fā)就可以,不需要額外學(xué)習(xí)Dart,已有的Weex項(xiàng)目可以無(wú)縫切換。