Dart 运行平台

首先需要了解下 Dart 的运行平台,在不同的运行平台核心库的支持程度不一样的

  • 在 Native 的开发环境下使用的是 JIT 的形式,正式环境是 AOT
  • 在 Web 的开发环境是用的 dartdevc,正式环境是 dart2js

JIT (Just-in-time) 即时编译 ; AOT (Ahead Of Time) 事前编译

核心库

Dart Core:

名称 功能 平台
dart:async 异步编程支持库,包括 FutureStream 等类 All
dart:collection dart:core 基础上添加集合相关的工具类 All
dart:convert 不同数据互相转换的编码器和解码器,包括了 UTF-8 JSON All
dart:core 每个 Dart 程序的内置库,包含了基础类型、集合等基础功能 All
dart:developer 开发者工具库,调试器 和 校验器 JIT, Web (experimental, dartdevc only)
dart:math 数学、常数、随机数等 All
dart:typed_data 固定长度的数据类型列表,比如无符号的 8 字节整数 Int8List All

Dart VM:

名称 功能 平台
dart:io File,Socket 和其他 IO 支持 JIT, AOT
dart:isolate 内存隔离的并发编程:与线程类似但不共享内存,仅通过消息进行通信 JIT, AOT
dart:mirrors 反射支持,体验版,暂不支持 Flutter JIT (experimental, not Flutter)

Dart Web:

名称 功能 平台
dart:html File,Socket 和其他 IO 支持 Web
dart:indexed_db 浏览器 indexed_db 相关 Web
dart:js dart 和 js 交互 Web
dart:js_util js 工具库 Web
dart:svg SVG 图片 Web
dart:web_audio 浏览器 高保真音频 Web
dart:web_gl 浏览器 3D 编程 Web
dart:web_sql 浏览器 Storage data SQL API Web (obsolete)