为了提升产品的透明性,每年年初 Flutter 团队都会发布今年度的产品路线图,以帮助使用 Flutter 的团队和开发者们根据这些优先事项制定计划。

2022 年 Flutter 团队将重点通过关注以下几个领域和方向针对产品进行研发和改进,包括开发者体验、桌面端、Web 端、框架和引擎、Dart 编程语言、卡顿,并计划于今年停止对 32 位 iOS 设备的支持,并增加对软件供应链安全方面的投入,以达到 SLSA 4 级 (用户可以高度确信该软件没有被篡改)。

重点关注

开发者体验

作为一款面向开发者的工具,我们最关注的就是开发者体验。我们的目标是创建一款开发者们热爱的 SDK,这将会在很多方面有所体现。包括创建实现通用业务场景的 widget、厘清现有的 API 并引入新的 API 以更便捷的方式实现常见的设计模式、改善错误信息提示、改进开发者工具和 IDE 插件、创建新的 Lint 规则、修复框架和引擎的 bug、改进 API 文档、创建更有用的示例代码,以及在 Web 上实现热重载 (Hot Reload) 和改进 Dart-to-JS 场景的堆栈跟踪等。

桌面端

2022 年我们计划将 Flutter 的桌面端支持推进到稳定版本。我们会把重点放在测试上,并在平台可用之后进行公布——首先是 Windows 平台,然后是 Linux 平台,然后是 macOS 平台。这项工作的重要部分是扩增回归测试套件,以让我们有充分的信心将 Flutter 带到桌面端平台而无需破坏现有的代码。

Web 端

2022 年我们计划提升 Flutter Web 的性能、插件质量、无障碍特性和多浏览器一致性的体验,与此同时,我们也在计划让 Flutter 应用更方便的嵌入其他页面。

框架和引擎

为了提高 Android 平台的还原度,我们将 更新 Material 库以支持 Material Design 3。也为了提高 Web 平台的还原度,我们计划实现跨组件的文本选择,这些更新都不局限于某个平台。

我们计划提升不同平台上的文本编辑体验,例如提高桌面端文本编辑协议的还原度,以及 iPadOS 上手势识别的集成。

对于桌面和 Web 端,我们将提供菜单 (包括上下文菜单和菜单栏) 的解决方案,包括与操作系统相关的集成 (特别是与 macOS 相关)。

最后,我们计划尝试支持基于单一 Isolate 渲染到多个窗口的特性,这个特性受到桌面端平台的启发,但其应用可以不仅限于桌面端平台。

Dart 编程语言

2022 年我们计划放缓并以稳定的速度发展 Dart 编程语言特性,我们预计会给 Dart 编程语言引入一个新的特性,有可能是静态元编程 (static metaprogramming),我们将根据对这个特性对 Dart 编程语言的改善做出决定,也同时会对 Dart 编程语言进行改进,包括可能改进 package 导入的语法等。

我们还计划扩增 Dart 编程语言的编译工具链以支持编译为 Wasm,不过这可能会要看 WasmGC 规范的支持时间。

卡顿

2021 年我们着手解决了很多关于卡顿的问题,但最后的结论是,我们可能需要完全重新思考该如何使用着色器 (shader),正因如此,我们也一直在重写图形渲染的后端。2022 年,我们打算将 iOS 上的 Flutter 迁移到这个新的架构上,然后根据在这方面的经验,将这个方案移植到其他平台。此外,我们还将实现其他性能方面的改进以及性能自省特性,例如 新的 DisplayList 系统 所实现的功能。

计划弃用

我们计划在 2022 年放弃对 32 位 iOS 设备的支持,详见 RFC 文档

基础设施建设

2022 年我们将增加对供应链的安全的投入,目的是达到符合基础设施 SLSA 4 级别中描述的要求。

近年来,软件供应链安全 (Supply Chain Security) 成为常被提及的话题,因为软件开发的复杂性,在源码、构建、发布等过程中都可能会存在很多威胁。一些不怀好意的人可能会通过发布二次打包后的开发工具或一些命名相似的软件包,或在一些依赖的软件包中加入恶意代码等方式对应用的供应链安全产生威胁。

SLSA (Supply-chain Levels for Software Artifacts) 是一个针对软件供应链的安全规范框架,目的是为了防止软件被篡改、提高完整性,其内部版本由 Google 自 2013 年开始使用,v0.1 版于 2021 年 9 月中旬公开发布,由 Intel、Linux 基金会、VMWare、Google、CNCF 等多家机构组成的委员会共同领导,SLSA 1 为最基础的要求等级,SLSA 4 为最高等级要求,了解更多请访问 slsa.dev 网站。

希望这份 2022 产品路线图可以更好的帮助你构建 Flutter 应用,让你的业务更上一层楼!

Flutter 产品路线图原文: https://github.com/flutter/flutter/wiki/Roadmap

Flutter 2022 产品路线图发布的更多相关文章

  1. RoadMap:如何创建产品路线图

    (1)什么是Roadmap? RoadMap/产品路线图 Roadmap通常翻译为“路线图”或“蓝图”,目前并没有一个公认的定义.在这里,我们认为Roadmap是产品经理进行产品管理的一个中长期规划, ...

  2. XD to Flutter 2.0 现已发布!

    Flutter 是 Google 的开源 UI 工具包.利用它,只需一套代码库,就能开发出适合移动设备.桌面设备.嵌入式设备以及 web 等多个平台的精美应用.过去几年,对于想要打造多平台应用的开发者 ...

  3. 一起看 I/O | Flutter 休闲游戏工具包发布

    作者 / Zoey Fan, Product Manager for Flutter, Google 对于大多数开发者来说,Flutter 是一个应用框架.但利用 Flutter 提供的硬件加速图形支 ...

  4. 产品揭秘】来也Lead 2022产品亮点解读-RPA学习天地

    2022年4月26日,来也举行新品发布会.作为技术人员,花里胡哨的我且不说,我且说技术相关.整体架构"概念"整个平台覆盖了智能自动化的全生命周期包含:业务理解.流程创建.随处运行. ...

  5. [转载]Ubuntu17.04(Zesty Zapus)路线图发布:2017年4月13日发布

    Canonical今天公布了Ubuntu 17.04(Zesty Zapus)操作系统的发布路线图,该版本于今年10月24日上线启动,toolchain已经上传且首个daily ISO镜像已经生成.面 ...

  6. Julien Nioche谈Apache Nutch 2的特性及产品路线图

    原文地址: http://www.infoq.com/cn/articles/nioche-apache-nutch2 开源的Web搜索框架Apache Nutch的2.1版本已于2012年10月5日 ...

  7. 2019 年 SpreadJS产品路线图(Roadmap)

    前言 | 问题背景 SpreadJS已经发展成为市场上最好的纯前端JavaScript电子表格之一,但对于用户的需要和产品功能的改善,我们才刚刚开始! 在过去的一年中,我们发布了两个Service P ...

  8. 2019 年 GrapeCity Documents 产品路线图

    前言 | 问题背景 随着软件行业引入新的硬件和操作系统,我们看到更多的托管框架与.NET技术保持同步.Microsoft的.NET Standard和.NET Core定义了一个跨平台规范,为应用程序 ...

  9. 聊聊Google DSM产品的发布

    只有产品顺利的发布给用户使用并获得良好反馈,整个团队的价值才有所体现. 引言 不知不觉,从13年接手Google Doubleclick Sales Manager到今年7月,4年经历了3个miles ...

随机推荐

  1. 微信小程序项目使用npm安装vant-weapp的正确步骤,简单易懂!!

    微信小程序项目使用npm安装vant-weapp的正确步骤 1.在当前小程序项目目录npm init -y 构建npm项目 2.运行命令 npm install vant-weapp -S --pro ...

  2. [BUUCTF]PWN——picoctf_2018_buffer overflow 1/2

    picoctf_2018_buffer overflow 1 附件 步骤: 例行检查,32位程序,没开保护 本地运行一下程序,看看程序大概的执行情况 32位ida载入,习惯性的检查程序里的字符串,发现 ...

  3. [BUUCTF]REVERSE——Java逆向解密

    Java逆向解密 附件 步骤: 根据题目提示是java语言编写的程序,用jd-gui反编译一下 百度了一些java里的函数后读懂了这段程序的意思,将我们输入的字符串依次+'@',然后跟32异或,得到K ...

  4. CF935B Fafa and the Gates 题解

    Content 一个动点 \(F\) 一开始在平面直角坐标系上原点的位置,随后它会移动 \(n\) 次,每次只能向上走或者向右走 \(1\) 个单位,求经过直线 \(y=x\) 的次数. 数据范围:\ ...

  5. LuoguP7379 [COCI2018-2019#6] Lun 题解

    Content 判断使一个长度为 \(n\) 的银行卡号码(有一个空缺)合法,空缺里面填入的最小数字. 数据范围:\(n\in[1,100]\). Solution 由于只有一个空缺,因此我们可以考虑 ...

  6. 缓存系统redis操作、mongdb、memeche

    mongdb :默认数据持久化,存在内存的同时也向硬盘写数据. redis:可配置数据持久化,默认数据在内存中 memeche:only support 内存模式 redis操作 https://ww ...

  7. MySQL实现主从库,AB复制配置

    AB复制是一种数据复制技术,是myslq数据库提供的一种高可用.高性能的解决方案. AB复制的模式:一主一从 .一主多从.双主.多主多从 复制的工作原理:要想实现ab复制,那么前提是master上必须 ...

  8. Flex布局的详细总结

    Flex布局的详细总结 1.认识flex布局 flex布局(flexible布局,弹性布局),是目前web开发中使用的最多的布局方案. 两个重要概念: 开启flex布局的元素叫flex contain ...

  9. 一个自定义的c++错误类 和 同步异步、阻塞非阻塞(区别简述)

    一个例子,自定义exception 继承std::exception 1 class _oct_udp_api_export_ udp_err : public std::exception 2 { ...

  10. 【剑指Offer】二进制中1的个数 解题报告(Python)

    题目地址:https://www.nowcoder.com/ta/coding-interviews 题目描述 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 解题方法 这个题如果使 ...