Flutter是Google一个新的用于构建跨平台的手机App的SDK。写一份代码,在Android 和iOS平台上都可以运行。

跟React Native、Weex等有什么不同?

React Native、Weex等一直存在一个问题,就是性能跟原生App存在很大的差异。这跟它们的原理有很大的关系,下面从原生App,RN、Weex,Flutter的简单原理说一下它们的不同。

原生App

苹果2008年发布iOS,Google 2009年发布Android,它们的SDK是基于两种不同的编程语言Objective-C 和 Jave.现在又有了Swift和Kotlin。

image

上面是原生App的一个简单架构,开发人员直接调用平台SDK进行UI开发。由于语言及SDK的不同,所以开发人员必须为两个平台分别开发App。

WebViews

最早的跨平台方案是基于JaveScript 和 WebView的,像PhoneGap、Cordova、Ionic等。

image

UI通过WebView来显示html代码,系统服务则通过一个中间层桥接到JaveScript中去。

React Native

RN不仅桥接系统服务,也将系统UI也桥接到了JaveScript中,这样写出来的UI最终也会渲染成原生的控件。

image

UI的渲染是很频繁的,要使UI不卡顿,必须达到60Fps。但是桥接会花一定的时间。所以这样的架构有时候会有性能问题。

Flutter

Flutter使用Dart语言开发,Dart可以被编译(AOT)成不同平台的本地代码,让Flutter可以直接和平台通讯而不需要一个中间的桥接过程,从而提高了性能。

flutter是什么意思,flutter的解释

flutter

英[ˈflʌtə(r)]美[ˈflʌtɚ]

vi. 飘动鼓翼

vt. 振翼,拍翅膀烦扰,坐立不安(旗帜) 飘扬

n. 颤振飘扬紧张,激动不安(身体部分的) 病态阵跳

[例句]Her chiffon skirt was fluttering in the night breeze.

她的雪纺裙在晚风中飘动着。

[其他] 第三人称单数:flutters 现在分词:fluttering 过去式:fluttered 过去分词:fluttered

flutter什么意思

flutter作为动词意思是拍翅而飞;盘旋;飘落;轻快拍动;扑棱;忙乱。作为名词意思是振翼;飘动;小赌注;激动不安;骚动;扑动。

常见的短语搭配:

1.flutter one's eyelashes 娇羞地眨眼

2.flutter the dovecotes 使沉着的人惊慌

3.cause a flutter among the dovecotes 惊扰原本平静(或思想守旧)的人们

例句:Her insides were in a flutter. 她内心忐忑不安。