Flutter是什么?
Flutter是一款移动应用程序SDK,一份代码可以同时生成iOS和Android两个高性能、高保真的应用程序。
Flutter目标是使开发人员能够交付在不同平台上都感觉自然流畅的高性能应用程序。我们兼容滚动行为、排版、图标等方面的差异。
React Native
平台实现
1、Reat编写JS文件,如果是UI界面,会映射到VirtuaDom
2、通过C++编写的Bridge调用原生的API,控件则是根据DOM映射到原生的View
3、Android平台通过ART虚拟机编译成机器码
绘制引擎
2D绘制:JSV8 + Skia engine
3D绘制:JSV8 + OpenGL ES
Weex
平台实现
1、Vue编写的Web页面编译成JS bundle
2、Native端解析DOM,生产真实的Native控件
3、Android平台通过ART虚拟机编译成机器码
绘制引擎
2D绘制:JSCore + Skia engine
3D绘制:JSCore + OpenGL ES
Flutter
平台实现
1、通过Dart虚拟机编译成机器码
绘制引擎
Skia engine
Flutter的优势
提高开发效率
同一份代码开发iOS和Android
用更少的代码做更多的事情
轻松迭代
在应用程序运行时更改代码并重新加载(通过热重载)
修复崩溃并继续从应用程序停止的地方进行调试
创建美观,高度定制的用户体验
受益于使用Flutter框架提供的丰富的Material Design和Cupertino(iOS风格)的widget
实现定制、美观、品牌驱动的设计,而不受原生控件的限制
版本记录
Flutter的第一个版本被称为“Sky”,运行在Android操作系统上。它是在2015年Dart开发者峰会 [1] 上亮相的,其目的是能够以每秒120帧的速度持续渲染。
Beta
Beta1版本于2018年2月27日在2018 世界移动大会公布 [2] 。
Beta2版本2018年3月6日发布 [3] 。
1.0版本于2018年12月5日(北京时间)发布 [4] 。
2.0版本于2021年3月4日(北京时间)发布
框架特性
快速开发
Flutter的热重载帮助你快捷方便的试验、重构UI、添加特性和修复bug。在仿真器、模拟器和ios、android硬件上体验亚秒级的重载,而不会丢失状态。
绚丽UI
通过Flutter内建的漂亮的质感设计和Cupertino(ios-flavor)小工具、丰富的动画API,平滑的自然滚动和平台感知,让用户感到满意。
响应式
通过Flutter的现代响应式(Reactive)框架和丰富的平台布局和基础组件轻松构建您的用户界面。用强大而灵活的API解决2D、动画、手势、效果等难题。
访问原生功能
通过平台api、第三方sdk和原生代码使您的应用变得生动起来。Flutter让您可以重用您现有的java、swift和Objc代码,并在iOS和Android上访问原生特性和SDK。








网友评论