老孟导读:这是官方公布的2021年路线图,向我们展示了2021年 Flutter 的主要工作及计划。

原文地址:https://github.com/flutter/flutter/wiki/Roadmap

Null safety

Flutter 将支持 Dart 的 sound null safety(空安全),并将插件和软件包生态系统的迁移扩展到支持空安全,包括Flutter团队直接维护的软件包和插件。

在此过程中,Flutter 团队计划提供迁移工具,示例和文档,以帮助迁移现有代码。

Null safety 已经发布了 beta 版本,2021年将会迁移到稳定版本,此特性有效的避免了空指针异常,kotlin 和 swift 中都包含此特性,如果以前接触过,基本没有学习成本。

Android and iOS

支持从商店增量下载资源和代码(受每个平台的限制),从而允许应用程序的初始下载比完整下载小得多,并可以按需获取数据。

努力提高将Flutter嵌入Android和iOS上现有应用程序的性能和人体工程学,并减少其开销。

此外,与往常一样,我们计划增加对iOS和Android操作系统新功能的支持。

当看到支持增量下载资源和代码,我第一想法就是Flutter支持热更新了?然后我又仔仔细细的读了很多遍,发现并不是热更新,原文中有一个限定条件从商店(from the stores),版本的更新依然依赖应用商店,大概率前期只有 google 的应用商店支持此功能。

后面两点就是比较常规的性能优化和系统新版本功能的支持。

支持Web and Desktop

我们2021年的目标是,除了iOS和Android外,还为Web,macOS,Windows和Linux提供生产质量的支持,使开发人员可以使用同一SDK在六个不同的平台上创建应用程序。

特别是对于Web,随着我们不断证明Flutter可以在Web上提供高质量的体验,我们的重点将放在保真度和性能上,而不是新功能上。

对于台式机,除了确保高质量的体验外,我们还将在可访问性层上完成工作,并增加对显示多个独立窗口的支持。

这个绝对是最重磅的更新了,今年 Flutter 发布Web、macOS、Windows、Linux正式稳定版本(据小道消息 Flutter 将在今年3月3日,Flutter活动中正式发布 Web 版本),此时 Flutter 将完成史无前例的大一统,个人估计,后半年Flutter将会迎来爆炸式增长。

改善开发人员体验

我们将继续致力于优化开发体验。

  • 减少实现Flutter所需的样板代码。
  • 研发 Null safety 的迁移工具。
  • 研究创建能够使重大更改更易于开发人员管理的工具,这将使我们能够对我们拥有的API进行一些长期期望的改进。

生态系统

在2021年,我们将继续与社区合作开发Flutter-team支持的插件。

目标是使预发行插件达到生产质量。

我们还专门计划对WebView插件进行重大改进。

质量

我们将基于Flutter的实际应用程序的经验,努力改善Flutter的内存使用率,应用程序下载大小的开销,运行时性能,电池使用率和耗电量。 这些可能采取引擎或框架修复的形式,以及描述最佳实践的文档或视频的形式。 我们还打算改进工具,以帮助调试有关内存使用情况的问题。

此外,我们将继续处理Bug。 2020年,我们全年解决了17,000多个问题,我们的目标是至少在2021年达到这一水平。

新功能

在2020年,我们主要专注于修复错误,而在2021年,我们计划还添加重要的新功能。 上面列出了一些。 我们还打算对表格(Table) 进行改进,并引入一些树(Tree)组件,以支持大量的列,行和/或树级别,以及跨列或跨行的单元格。

发布渠道和节奏

Flutter将继续提供四个“渠道”,分别是:master, dev, beta and stable。

我们计划每月(通常在本月初)发布一个beta版本,并在全年中发布大约四个稳定版本。 我们建议您对发布给最终用户的应用程序使用稳定的渠道。 有关发布过程的更多详细信息,请参见Flutter构建发布渠道Wiki页面

交流

老孟Flutter博客(330个控件用法+实战入门系列文章):http://laomengit.com

欢迎加入Flutter交流群(微信:laomengit)、关注公众号【老孟Flutter】:

【老孟Flutter】2021 年 Flutter 官方路线图的更多相关文章

  1. 【老孟Flutter】2020年总结

    2020年是我经历的最不平凡的一年,这一年有遗憾.有收获,有感概,也有庆幸,庆幸自己还活着. 用一句话总结自己的2020,忙并收获着,累并快乐着. <Flutter 实战入门> <F ...

  2. 【老孟Flutter】源码分析系列之InheritedWidget

    老孟导读:这是2021年源码系列的第一篇文章,其实源码系列的文章不是特别受欢迎,一个原因是原理性的知识非常枯燥,我自己看源码的时候特别有感触,二是想把源码分析讲的通俗易懂非常困难,自己明白 和 让别人 ...

  3. 【老孟Flutter】Flutter 2.0 重磅更新

    老孟导读:昨天期待已久的 Flutter 2.0 终于发布了,Web 端终于提正了,春季期间我发布的一篇文章,其中的一个预测就是 Web 正式发布,已经实现了,还有一个预测是:2021年将是 Flut ...

  4. 【老孟Flutter】6种极大提升Flutter开发效率的工具包

    老孟导读:本文介绍6种极大提升Flutter开发效率的工具包. [1] 强大的日志软件包 在开发 Flutter 的过程中打印日志是常用的调试方式之一,但 Flutter 内置的日志打印非常简单,下面 ...

  5. 【老孟Flutter】自定义文本步进组件

    交流 老孟Flutter博客(330个控件用法+实战入门系列文章):http://laomengit.com 欢迎加入Flutter交流群(微信:laomengit).关注公众号[老孟Flutter] ...

  6. 【老孟Flutter】41个酷炫的 Loading 组件库

    老孟导读:目前 loading 库中包含41个动画组件,还会继续添加,同时也欢迎大家提交自己的 loading 动画组件或者直接微信发给我也可以. Github 地址:https://github.c ...

  7. 【老孟Flutter】Stateful 组件的生命周期​

    老孟导读:关于生命周期的文章共有2篇,第一篇是介绍 Flutter 中Stateful 组件的生命周期. 博客地址:http://laomengit.com/blog/20201227/Statefu ...

  8. 【老孟Flutter】Flutter 中与平台相关的生命周期

    老孟导读:关于生命周期的文章共有2篇,一篇(此篇)是介绍 Flutter 中Stateful 组件的生命周期. 第二篇是 Flutter 中与平台相关的生命周期, 博客地址:http://laomen ...

  9. 【老孟Flutter】为什么 build 方法放在 State 中而不是在 StatefulWidget 中

    老孟导读:此篇文章是生命周期相关文章的番外篇,在查看源码的过程中发现了这一有趣的问题,欢迎大家一起探讨. Flutter 中Stateful 组件的生命周期:http://laomengit.com/ ...

随机推荐

  1. Scrum冲刺_Day01

    一.团队展示: 1.项目:light_note备忘录 2.队名:删库跑路队 3.团队成员 队员(不分先后) 项目角色 黄敦鸿 后端工程师.测试 黄华 后端工程师.测试 黄骏鹏 后端工程师.测试 黄源钦 ...

  2. jsonp使用post方法

    来源https://www.jb51.net/article/68980.htm

  3. AcWing 326. XOR和路径

    大型补档计划 题目链接 如果整体来做,发现既有加法,也有整体异或,这样不容易搞. 考虑异或,各个位置互不干扰,按位考虑一下. 枚举每一位 \(k\) 发现如果设 \(f[u]\) 为这一位的期望结果还 ...

  4. 在DLL中使用对话框

    在 DLL 中使用对话框资源与在 EXE 中使用是有所区别的,处理不当便会造成断言失败.原因是因为 CDialog::Create 与 CreateEx 默认使用当前进程中的资源(Dialog Tem ...

  5. redis学习之——CentOS 6 下载安装redis

    一.检查当前环境: 安装过程中没有这些,命令,在CentOS 6,最小安装导致..如果执行完命令,Noting  to  do...字样说明环境正常. yum -y install rpm gcc w ...

  6. CentOS 7.6安装MariaDB10.4.8超详细教程

    MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品. Cent ...

  7. react项目中对dom元素样式修改的另一种方法以及将组件插入到node节点中

    在项目中,以前如果遇到对dom元素的操作都是直接获取dom元素,比如说: 但是如果修改的样式比较多的话,不如直接"切换"dom元素,如下例子: 这样会节省一些性能.因为操作dom的 ...

  8. Mac下安装appium+python+Android sdk 环境完整流程

    安装大纲:1,安装jdk (jdk1.8及以上版本都可以,尽量不要用最新可能会不兼容) 2,安装android-sdk (mac版本的android-sdk) 3,mumu模拟器 (随便找的一个) 4 ...

  9. Day1 input&print

    1.print函数 格式: 打印字符串:print('xxx','yyy') 可以接受多个字符串,多个字符串之间使用逗号分隔. 间隔字符串的逗号会被打印成空格输出. 打印整数或计算结果:print(' ...

  10. js v-if 判断多个属性 in

    js  v-if 判断 <div v-if="suborder.approve_user==user_id || suborder.approve_userrole_id in rol ...