Dart
官网地址:https://dart.dev
中文网址:https://dart.cn

1、Dart 是什么?

Dart 是一个由谷歌开发的通用编程语言,后来被 Ecma (Ecma-408)批准为标准。它用于构建 web、服务器、桌面和移动应用程序。
Dart 是一种面向对象的、类定义的、垃圾回收语言 ,使用 C 样式的语法可以随意地转换为 JavaScript。 它支持接口、 mixin、抽象类、具体化泛型、静态类型等。
Dart 是类型安全的:它结合使用静态类型检查和运行时检查,以确保变量的值总是与变量的静态类型匹配。 尽管类型是强制的,但是类型声明是可选的,因为 Dart 会在编译时执行类型推断。

2、Dart 的特性

1、任何保存在变量中的都是一个对象, 并且所有的对象都是对应一个类的实例。无论是数字,函数和 null 都是对象。所有对象继承自 Object 类。未初始化的变量默认值是 null,即使变量是数字类型默认值也是 null。
2、Dart 语言是强类型编程,一旦确定类型,则不可改变变量类型,编译时会进行语法检查,但 Dart 允许弱类型语言式的编程。如果要明确说明不需要任何类型,需要使用特殊类型 dynamic。
3、Dart 支持泛型,如 List <int> (整数列表)或 List <dynamic> (任何类型的对象列表)。
4、Dart 支持顶级函数(例如:main()是统一入口函数 ), 同样函数绑定在类或对象上(分别是静态函数和实例函数 )。 以及支持函数内创建函数 ( 嵌套或局部函数 )。
5、Dart 没有关键字 public , protected 和 private 。 如果标识符以下划线(_)开头,则它相对于库是私有的。
6、Dart 工具提示两种类型问题:警告和错误。 警告只是表明代码可能无法正常工作,但不会阻止程序的执行。 错误可能是编译时错误或者运行时错误。 编译时错误会阻止代码的执行;运行时错误会导致代码在执行过程中引发异常(exception)。
7、Dart 支持顶级变量,同样变量绑定在类或对象上(静态变量和实例变量)。 实例变量有时称为字段或属性。
8、Dart 代码在运行前解析,指定数据类型和编译时常量,可以提高运行速度。
9、Dart 支持 async/await 异步处理。

3、Dart 优点

1、语法清晰简洁,性能高,JIT、AOT 编译,响应式。
2、Dart 是 AOT(Ahead Of Time) 编译的,可编译成快速,可预测的本地代码。
3、Dart 可以 JIT(Just In Time) 编译,开发周期快,为 Flutter 热重载提供基础。
4、Dart 可以轻松创建 60fps 运行的流畅动画和转场。
5、Dart 的声明式编程布局,易于阅读和可视化,不需要单独的声明式布局语言,如:XML,JSX。
6、Dart 非常易于学习,具有静态和动态语言,编程人员都熟悉的特性。