最新版本的Google Dart编程语言支持更强大的类型系统、更简明的语法,还提供了一个改进版的工具链,它被Google宣传为最佳的移动端应用程序和Web应用程序的开发方式,Google宣称Dart能够提高2-3倍的生产力。
Dart强制使用强类型模式,这能确保在开发过程的早期就能捕获错误。但是,仍然可以选用类型注释,其类型在未声明时就会被推断出来。你可以通过启用Dart 1.x版本代码的强模式(strong mode)来预览Dart 1.x代码在Dart 2中的可用情况。
Dart 2语言还有一个相对比较小的改动,但是这个改动对Dart语法的可读性产生了巨大影响,在调用构造函数时可以省略new和const关键字。这就使得使用更加具有声明性的语法成为可能。比如,你现在可以这样写:
Widget build(BuildContext context) => Container( height: 56.0, padding: EdgeInsets.symmetric(horizontal: 8.0), decoration: BoxDecoration(color: Colors.blue[500]), child: Row( ... ), );
而不用像Dart 1.x所兼容的代码那样:
Widget build(BuildContext context) { return new Container( height: 56.0, padding: const EdgeInsets.symmetric(horizontal: 8.0), decoration: new BoxDecoration(color: Colors.blue[500]), child: new Row( ... ), ); }
Dart通过Google的Flutter框架来支持移动应用程序开发,该框架旨在为Android和iOS创建原生UI。Flutter能够原生编译至ARM和x86处理器平台。当与Flutter引擎相结合之后,Fultter能够提供一个高效的垃圾收集器,这就使得创建能够运行的原生移动端应用程序成为可能。
Dart的定位转换至面向客户端开发这一说法,经过了Google的Dart产品经理Anders Thorhauge Sandholm的确认:
我们在开发Dart语言和相关类库时,所关注的重点是最大化客户端开发的价值和实用性。
但是这并不意味着,Dart抛弃了命令行的使用和针对服务器端的代码。Dart对客户端开发的关注可以被视为Google试图在Google产品以外的行业增加对Dart使用的新尝试,Google目前还是Dart的最大使用者。据Sandholm所说,Dart的性能和可预测性,以及其良好的系统,使得Google AdWords工程师们的效率比以前提升了2-3倍。此外,Sandholm说,Google团队在移动端和Web端的AdWords Express和AppTree上使用的Dart代码已经占到了50%-70%。
查看英文原文:Dart 2 Revamped for Mobile Development
本文永久更新链接地址:https://www.linuxidc.com/Linux/2018-03/151229.htm
