写点什么

Dart 2 为移动开发做出改进

  • 2018-03-06
  • 本文字数:1043 字

    阅读完需:约 3 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

最新版本的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

2018-03-06 18:002606

评论

发布
暂无评论
发现更多内容

【英雄大会】之谁说站在光里的才算英雄(上篇)

Anna

经历分享 作者 简介

“微博评论”的高性能高可用计算架构

张逃逃

测性能,拿周边|OceanBase 3.1.2 版邀你来玩

OceanBase 数据库

如何设计信息安全领域的实时安全基线引擎

Apache Flink

大数据 flink 开源 编程 实时计算

架构训练营 模块五

Geek_16d2b8

架构训练营5期

python的默认参数的一个坑(1),快速学会

程序媛可鸥

程序员

微博“发评论”高性能高可用计算架构

Fingal

#架构实战营

SpringCloud-Feign

昊运

SpringCloud

架构实战营:模块五作业

刘璐

微博评论的高性能高可用计算架构设计

五月雨

架构实战营 「架构实战营」

区块链+供应链金融,中小微企业融资按下“快进键”

旺链科技

区块链 产业区块链 供应链金融

数字空间里的普法课堂!最高法工作报告解读登陆百度希壤

百度开发者中心

2月券商App行情刷新及交易体验报告,东方与安信升至领导者象限

博睿数据

高可用演练中堆叠切换失败分析

BUG侦探

高可用 堆叠 链路聚合

设计微博系统中”微博评论“的高性能高可用计算架构

IT屠狗辈

架构实战营 微博评论架构实战

一文读懂可观测性与Opentelemetry

博睿数据

基于爬虫的测试自动化经验分享

FunTester

爬虫 性能测试 办公自动化 FunTester 测试自动化

【图解数据结构】树和二叉树全面总结

知心宝贝

二叉树 数据结构与算法 二叉树遍历 3月月更 树和二叉树

Python爬虫入门教程10:彼岸壁纸爬取,成功入职字节跳动

程序媛可鸥

Python 程序员 面试

Apache ShardingSphere 企业行|走进中信云网

SphereEx

数据库 开源 企业 ShardingSphere SphereEx

易观分析:应用数字孪生低代码平台,API开放性是选型关键

易观分析

数字孪生

经验分享 | 最佳文档协作软件推荐

小炮

吕氏餐饮:用宜搭智能考核绩效,人事管理更高效

一只大光圈

低代码 数字化 钉钉宜搭

“易+”开源 | 网易会议开源之移动端篇

网易云信

开发

python爬虫JS逆向:X咕视频密码与指纹加密分析,程序员工作2年月薪12K

程序媛可鸥

Python 程序员 面试

百度交易中台之账房系统架构浅析

百度开发者中心

Python爬虫:看看舞蹈区哪个女网红最给力,如果爬虫不是为了爬视频

程序媛可鸥

Python 程序员 面试

海量非结构化数据副本难保护,焱融科技携手英方推出联合解决方案

焱融科技

云计算 分布式 云原生 高性能 文件存储

Kubernetes 集群如何做到低成本高弹性

玄月九

Kubernetes 弹性 成本 降本 低成本高弹性

如何在PC端应用中运行小程序?

FinClip

小程序 小程序框架 小程序容器

Golang 1.18正式版发布,正式加入泛型语言家庭

学神来啦

Go golang Go 语言

Dart 2为移动开发做出改进_开源_Sergio De Simone_InfoQ精选文章