Flutter V2 的10个特点

谷歌官方发文: 中文 English

7大平台

windows mac OS linux android ios web embedded
在这里插入图片描述
www.flutterfolio.com 需要注册
在这里插入图片描述
在这里插入图片描述

web 平台优化、进入稳定版

  • 3个方向
    1. pwa: 缓存、push 推送服务、桌面快捷、消息提示
    2. spa: 单页程序类似 vue react
    3. expanding mobile: 快速迁移 app、复用代码
  • 2D 3D 渲染 WebGL Skia WebAssembly Canvas
  • 稳定的版本
  • irobot 基于 flutter 构建
  • 技术架构
    在这里插入图片描述
  • 性能
  1. HTML renderer: HTML 渲染器: Uses a combination of HTML elements, CSS, Canvas elements, and SVG elements. This renderer has a smaller download size. 使用 HTML 元素、 CSS、 Canvas 元素和 SVG 元素的组合
  2. CanvasKit renderer: CanvasKit 渲染器: This renderer is fully consistent with Flutter mobile and desktop, has faster performance with higher widget density, but adds about 2MB in download size.
  • 演示项目
  1. 编辑器
    https://rive.app/
  2. 动画
    https://flutterplasma.dev/
  3. invoice
    https://www.invoiceninja.com

组件库升级、对 ios 支持加强

  • 新增 iOS 功能
  1. CupertinoSearchTextField
  2. CupertinoFormSection、CupertinoFormRow 和 CupertinoTextFormFieldRow
    https://api.flutter.cn/flutter/cupertino/CupertinoFormSection-class.html
    https://api.flutter.cn/flutter/cupertino/CupertinoFormRow-class.html
    https://api.flutter.cn/flutter/cupertino/CupertinoTextFormFieldRow-class.html

flutter支持折叠屏

  • 这个支持有点鸡肋(个人看法哈)
    在这里插入图片描述

混合编程

  • 将 Flutter 集成到现有应用
  • 过去,额外 Flutter 实例的内存占用量与第一个 Flutter 实例相同。在 Flutter 2 中,我们将创建额外 Flutter 引擎的静态内存占用量降低了约 99%,使每个实例的占用量大约为 180kB。

Dart Null Safety

  • Dart 是一种类型安全的语言,这意味着当开发者获取某种类型的变量时,编译器可以保证它是该类型,但是类型安全本身不能保证变量不是 null。

  • Null errors 非常常见的问题,在 GitHub 上 可以搜索到成千上万由于 null 导致 Dart 代码出现异常的问题,甚至有成千上万的 commits 试图解决这些问题。

void main() {
  ps(null);
}

void ps(List<String> files) {
  for (var file in files) {
    print(file.isEmpty());
  }
}
  • 目前在根目录的 analysis_options.yaml 添加如下配置就可以开启 null safety,另外 Flutter 需要 dart sdk 2.9 。
analyzer:
 enable-experiment:
 - non-nullable

flutter DevTools 开发工具升级

  • 性能监控
    https://flutter.dev/docs/perf/rendering/ui-performance
  • Invert Oversized Images
    能够轻松发现所显示的分辨率低于其实际分辨率的图像,这有助于追踪应用过大和内存占用过多等情况。
    若要启用此功能,请在 Flutter Inspector 中启用 Invert Oversized Images。
    在这里插入图片描述
    在这里插入图片描述
  • 弹性布局
    web前端早有的布局方法

开发工具的提升

  • Android Studio/IntelliJ 扩展
  • Visual Studio Code 扩展

Flutter Community Plus Plugins

在这里插入图片描述

DartPad 升级到支持 Flutter 2

在这里插入图片描述

flutter 的优势

  • 大公司支持 (背靠谷歌,还有像 canonical 支持)
  • 快速增长的 flutter 应用
  • 多平台支持
  • 设备优化的好
  • 丰富的组件库
  • IDE 环境成熟 Visual Studio Code, Android Studio, and IntelliJ
  • 简易安装
$ snap install --classic flutter
$ snap install --classic code
$ code --install-extension dart-code.flutter
  • 快速模板
$ flutter channel dev
$ flutter upgrade
$ flutter config --enable-linux-desktop

$ flutter create counter
$ cd counter
$ flutter run -d linux
  • 现有项目升级
$ cd my_flutter_app
$ flutter create .
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gleason.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值