Flutter是什么

Posted flutter开发者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flutter是什么相关的知识,希望对你有一定的参考价值。

什么是Flutter

Flutter 是一个跨平台(androidios)的移动开发框架,使用的是 Dart 语言。

Flutter 的目标是用来创建高性能、高稳定性、高帧率、低延迟的 Android 和 iOS 应用。并且开发出来的应用在不同的平台用起来跟原生应用具有一样的体验。

不同的平台的原生体验应该得到保留,让该应用看起来同整个系统更加协调。不同平台的滚动操作、字体、图标 等特殊的特性 应该和该平台上的其他应用保持一致,让用户感觉就像操作原生应用一样。

为何选择使用 Flutter?

开发效率高,一套代码可以开发出 Android 、 iOS、Fuchsia平台应用

同样的功能只需要很少的代码,如果你只开发一个平台的应用,使用 时髦的、更具有表达性的开发语言,也可以让你用更少的代码来实现同样的功能。

迭代更加方便

在应用运行的时候就可以修改代码并重新加载修改后的功能(hot reload)

直接修改崩溃的 bug,然后继续从崩溃的地方执行调试

界面优雅高定制性

Flutter采用 Materal Design 设计语言(规范),该规范定义了用户界面上的元素的用途、外观、展现形式以及形态变化的规范

提供了可定制的 UI 框架,不再受制于手机平台控件的支持。

完全从头设计的系统,不会有为了兼容考虑的历史包袱——比如 Java 虚拟机的慢速,又比如 Android 较慢的渲染速度。因此也可以把体积做的很小,塞到存储容量很小的设备中。


Flutter&ReactNative

ReactNative –> Facebook

Flutter–> Google

ReactNative的控件都是在原生控件上的扩展,如ReactNative里的ListView在android平台下的实现就是继承于android里的ListView。在Flutter中,它的所有 UI 组件都是一帧一帧画出来的。这样也能够很准确,也很灵活的做出你想要的 UI 。

ReactNative中View渲染过程


Flutter中View渲染过程


Flutter是什么

能上的差距,由于ReactNative里的动画都是由js驱动的所以在动画处理或者高帧率刷新的界面上可能会有一点卡顿或者延迟。

热加载,虽然ReactNative二次加载上也很快但是跟Flutter的 hot reload比起来真的还是有一定差距的,毕竟flutter的 hot reload是支持数据缓存的。

Flutter hot reload


Flutter是什么

至于动画,ReactNative 是使用js和xml驱动的,Flutter使用的Dart开发的

小结

总之,Flutter就是一套全新的扩平台开发框架,支持你使用Dart语音来开发(Android 、Iso、Fuchsia)应用,虽然Flutter目前还在alpha阶段,但是他的前景还是很不错的。



我怀疑这个是个坏掉的二维码,不信你试试




以上是关于Flutter是什么的主要内容,如果未能解决你的问题,请参考以下文章

Flutter--实战Flutter 简介

为什么要用 Flutter

来看看这是什么,Flutter学习(上)

什么是 Flutter 自定义 ColorSwatch?

iOS与Flutter混合开发

Flutter慢慢来