flutter 介绍

所有的一切都是个人观点,不满可以留言,可以讨论,吵架大可不必 所有的资料仅 2018-07-06 时我所了解的,当前的 flutter 版本号 dev 为 0.5.6,beta 为 0.5.1 转载请注明出处,简书为第一发布平台(本人目前迁出简书平台,自建 blog)

何谓 flutter

简介

image.png google 自己的官方介绍,来源于flutter 官网

为什么要用 flutter

跨平台框架,能开发 ios/android,性能不错

已有那么多的跨平台方案,flutter 有什么优势

所有 UI 为 Flutter 平台自建,使用 skia 引擎绘制到屏幕上,能保持高度的统一性 所以 flutter 定位仅为 UI 框架,可以做一些业务逻辑

劣势呢

目前与原生控件很难有机的结合到一个界面内

  大概意思是,目前类似于baidumap,这样的控件只能是生硬的覆盖到flutter的界面上
  android中对应FlutterView(SurfaceView),ios中是FlutterViewController的根view
  你很难直接写方便的回调,手势控制

  WebView,直播等视频播放同理

与原生通信仅依赖一个接近字符串性质的通道,没有构建工具/编译层级的检查 尚处于初级阶段,开源社区还不活跃,相关社区关注度不高

  关于字符串性质的通道:
  大概意思就是,所有的通信依赖于字符串
  比如flutter中需要定义
  static const MethodChannel _channel = const MethodChannel('com.365.app/BarCode');
  _channel.invokeMethod("getData", source);
  类似于这样的调用方式

  而原生中 也是需要定义出完全相同的字符串来表示通道名,方法名等等

flutter 使用 dart 语言开发

为什么使用 dart,貌似是说 flutter 的开发团队物理距离 dart 的团队很近,这段真实性未知

前景情况

个人觉得如果你的团队允许,可以考虑转入

其他文章链接

一篇在中文官网上看到的文章 : 连接

后记

后面打算写一篇 Google 的 Gallery 的源码解析,看看有没有这个毅力吧