Flutter调研

Flutter官网 https://flutter.io/
Flutter中文站 https://flutterchina.club/
Flutter中文资源 https://flutter-io.cn/

简介
  • Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。
  • Flutter由Dart + C++ + Skia 开发。
  • 目前已经支持了 iOS、Android、Fuchsia。
开发环境

可以在Android Studio上安装Flutter插件进行开发,开发使用Dart语言。

Dart 官网 https://www.dartlang.org/
Dart中文站 http://dart.goodev.org/

跨平台方案比较

市面上的跨平台解决方案,可以大致归结为:

  • 使用平台支持的web技术:这些解决方案基本上加载了应用程序中的移动浏览器,并在该浏览器中执行所有的逻辑
  • React Native、Weex跨平台框架
  • 微信小程序

但是都存在一些缺陷,比如

  • WebView框架有一个致命(在对体验&性能有较高要求的情况下)的缺点,那就是WebView的渲染效率和JavaScript执行性能太差。再加上Android各个系统版本和设备厂商的定制,很难保证所在所有设备上都能提供一致的体验。
  • 而React Native ,因为JavaScript访问了原生UI组件,所以它也必须经过这些“桥接器”,界面上的UI控件通常被频繁地访问(在动画、转化或者用户用手指“滑动”屏幕上的某些东西时,每秒被访问高达60次),因此这很可能会导致性能问题
  • 微信小程序需要依附于微信生态

Flutter则开辟了一种全新的思路,从头到尾重写一套跨平台的UI框架,包括UI控件、渲染逻辑甚至开发语言。渲染引擎依靠跨平台的Skia图形库来实现,依赖系统的只有图形绘制相关的接口,可以在最大程度上保证不同平台、不同设备的体验一致性,逻辑处理使用支持AOT的Dart语言,执行效率也比JavaScript高得多。

优缺点

优点:

  • 响应式视图的优点,不需要JavaScript的桥接器
  • 快速,流畅,可预测; 代码将AOT编译为本机(ARM)代码
  • 开发人员完全控制UI组件和布局
  • 配有美观,可定制的UI组件
  • 强大的开发者工具,惊人的热重新加载
  • 性能更好,兼容性更好,开发起来更有乐趣

缺点:

  • 还没有Release版本
  • 过渡原有项目比较复杂
参考文章

Flutter的原理及美团的实践
为什么说Flutter是革命性的?

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值