
最近在2019年9月10日在中国举行的
Google Developer Days Conference上,Flutter 1.9与更新的Dart 2.5编程语言一起发布了。
会议的主要亮点可以概括为三个要点:
- Google已宣布Dart 2.5编程更新和Flutter 1.9版本的新升级。
- Dart 2.5将支持调用C代码和智能代码完成。
- Flutter 1.9将支持iOS 13,macOS Catalina和新的Material小部件。
在本博客中,我将详细讨论主要指标,以便您详细了解重点内容和更新!
让我们开始吧!
Dart 2.5作为编程语言有什么用?
Dart是Google传播的编程语言,已用于开发基于移动,Web和桌面的应用程序。 它是一种面向对象的,类定义的,垃圾回收的语言,具有C样式的语法,可用于选择性地编译为JavaScript。

Dart 2.5的最新版本具有以下主要亮点:
->支持使用Dart FFI库直接通过Dart调用C代码:
知道低级编程语言的开发人员将对此感到兴奋。 该活动还启动了dart:ffi库,该库的预览允许直接从Dart和Flutter调用C代码。
结果,使用该编程语言和框架开发的任何应用程序都可以访问用C编写的,用于Android NDK和桌面平台的系统API和库。
到现在为止,借助于本机扩展,可以通过深度集成到Dart VM中直接从Dart调用C。 但是,Google推出了一种新机制,该机制可以提高性能,简化方法和提高可用性。
在最新更新中,Dart-C互操作将启用以下两种情况:
- 在主机OS上调用C支持的系统API。
- C可以支持对库的调用,而C对于单个OS而言可以是跨平台的。
新的dart:ffi库现已准备就绪,可以在Dart开发人员通道或Flutter主通道上尝试。
->利用机器学习实现智能代码完成:
机器学习的强大功能可帮助您精确地帮助Flutter和Dart应用程序。 Dart 2.5带来了基于ML的代码完成系统的预览。
这个新系统基于TensorFlow Lite和
Github上的开放源代码Dart存储库。 它通过尝试建议相关选项来起作用。
这是一个令人欢迎的更改,请牢记键入的编程语言中可能完成的列表。 TensorFlow Lite通过分析开源Dart Code Compilations的堆来训练成员出现模型。
因此,随着API的持续增长和开发人员的类型,该模型可用于预测下一个符号。
此预览是Dart分析器的一部分,该分析器使支持Dart的所有编辑器都可以访问代码完成。 其中也包括Android Studio,Visual Studio Code和IntelliJ。
->常量表达式及其喜欢的地方:
最后但并非最不重要的一点是,新版本的Dart支持更多的方式来支持常量表达式。 到目前为止,Dart一直支持常量变量和值的创建。
但是,对常量表达式的支持是有限度的。
有了新的更新,现在有新的方法可以做到这一点。 它将包括实现强制转换的方法,以更好地控制流和集合传播功能。
Google现在正在准备使用扩展方法进行下一次更新,该扩展方法将默认允许非空引用,并改善了对并发的支持。 现有代码的丰富迁移工具是该技术巨头最新的关注和投资领域。
Flutter 1.9的新增功能?
Flutter是一个应用程序开发框架,已与竞争对手的Facebook React Native一起运行。

如前所述,新的Flutter 1.9版本完全支持iOS 13和macOS Catalina,并提供了更多高级工具,更好的材质小部件和令人兴奋的基于Dart的功能。
该版本在iOS 13正式发布时得到了很好的估计,并且在构建时考虑了最新的UI功能。 另外,Flutter 1.9的构建是为了对macOS Catalina绝对支持,包括对Xcode 11的支持。
Flutter应用程序开发一直风靡一时,有些公司是Flutter应用程序开发的先驱。
下面列出了一些突出的亮点:
-> Flutter For Web:
如前所述,Google已将Flutter Web存储库与主存储库融合在一起。 换句话说,我们有一个统一的Flutter存储库,这使得使用相同的代码库为台式机,移动设备和Web开发应用程序成为可能。
现在,当开发者创建项目时,该框架将使用最小的web / index.html文件创建一个Web运行程序,该文件会引导Web编译的代码。
该文件将启用Flutter CLI工具或IDE插件,以便开发人员可以在Web上运行和编辑Flutter应用程序。 尽管更改处于初期阶段,但仍有进一步发展的空间。
->多种语言支持:

Flutter在此版本中全力以赴。 它还增加了对全球24种语言的支持,而以前的版本完全没有这种支持。
其中包括阿尔巴尼亚语,南非语,阿姆哈拉语,阿塞拜疆语,阿萨姆语,孟加拉语,巴斯克语,白俄罗斯语,缅甸语,古吉拉特语,格鲁吉亚语,冰岛语,吉尔吉斯语,卡纳达语,老挝语,马拉雅拉姆语,马其顿语,尼泊尔语,奥里亚语,旁遮普语,僧伽罗语,泰卢固语,乌兹别克语和祖鲁语。
->支持iOS 13和macOS Catalina:
Google希望让Flutter成为Xcode 11构建系统的补充。 这就是为什么Flutter 1.9可以用于
iOS 13和macOS Catalina的原因。
Google提升了游戏的端到端工具体验,以在整个工具链中提供64位支持并简化平台依赖关系。
除此之外,Flutter 1.9还支持iOS 13的可拖动工具栏,包括长按,从右侧拖动功能以及振动反馈。
->支持新材料小部件:
Flutter 1.9也一直是新材料设计小部件的标志。 Material是一个领先的开源设计系统,旨在实现跨平台的交互式用户体验。 它既全面又灵活。
在Flutter的新版本中,引入了几个新的小部件。 例如,文本和图标小部件已在ToggleButtons小部件中组合在一起,以创建一组可自定义的按钮。
使用ColorFiltered窗口小部件,您可以为强大用户中的色盲用户解决颜色可访问性问题。
有许多
颤振的应用程序编码器 ,它们将在执行和操作代码时确保效率和透明度。
->工具链的改进:

使用Flutter 1.9,对于基础项目,新项目将默认为Swift而不是iOS项目的Objective-C以及Kotlin而不是Android项目的Java。 它将消除将Swift中编写的包添加到应用程序所需的手动工作。
Swift 5是ABI稳定的,其动态库将不再需要iOS 12.2及更高版本的分发包,从而最小化了Swift应用程序的大小。 而且,Kotlin一直是Android项目最喜欢的语言。
因此,通过选择还原为Objective-C或Java,Flutter 1.9中的这些新工具链改进似乎是正确的。
此外,Google正在努力改进Flutter中的错误消息,以使其更加简洁,可读性和可操作性。
尾注:
2019年Google Developers Day在Flutter和Dart中发生了很多变化,开发人员社区肯定会敞开双臂欢迎这些变化。
对于热衷于将要开发的技术的开发者来说,这将是一个美好的时光。 在GDD 2019中发布更新之后,Flutter应用程序开发将持续增长。
祝你好运!