Dart 語言核心函式庫
Dart 擁有非常豐富的核心庫用以為諸如處理物件集合(dart:collection
)、進行數學運算(dart:math
)以及編/解碼資料(dart:convert
)等常用程式設計操作提供支援。除此之外,
由社群貢獻的 packages 中也提供了許多其它的 API 便於開發者使用。
全平台庫列表
下面提供的一些函式庫可以應用於所有 Dart 可執行的平台。
dart:core 每一個 Dart 程式都可能會使用到的內建型別、集合以及其它的一些核心功能。 |
|
dart:async , package:async 支援透過使用 Future 和 Stream 這樣的類實現非同步程式設計。package:async 提供了更多圍繞 Future 和 Stream 建構的實用工具 |
|
dart:collection , package:collection 提供 dart:core 庫中不支援的額外的集合實用工具類別。package:collection 則提供了更進一步的、用於處理和使用集合的函式和實現 |
|
dart:convert , package:convert 用於提供轉換不同資料的編碼器和解碼器,包括 JSON 和 UTF-8。 package:convert 則提供了更多編解碼器。 |
|
dart:developer Interaction with developer tools such as the debugger and inspector. |
Native JIT and dartdevc only |
dart:developer 類似偵錯程式和分析器這樣的與開發者互動配合的工具。 |
|
dart:math 包含算術相關函式和常量,還有隨機數產生器。 |
|
dart:typed_data , package:typed_data 高效處理固定大小資料(例如無符號的 8 位整型)和 SIMD 數字型別的列表。 package:typed_data 提供了更進一步的類和方法用於處理結構化的資料。 |
原生平台函式庫
下面列出的核心庫適用於 Dart 原生平台(AOT 和 JIT 編譯執行)。
dart:ffi , package:ffi Dart 程式碼可以透過這個外部函式介面使用原生的 C 語言 API。 package:ffi 提供的實用工具套件括:支援轉換 Dart 字串和 C 字串。 |
|
dart:io , package:io 用於支援非 Web 應用的檔案、Socket、HTTP 和其它 I/O 操作。 package:io 提供的功能包括 ANSI 顏色、檔案複製和標準化的退出程式碼。 |
|
dart:isolate 使用 Isolate 實現併發程式設計:類似於執行緒的獨立的 Worker。 |
|
dart:mirrors 支援檢查和動態呼叫的基本反射功能。 |
只在 JIT 中有效 (Flutter 中無效) |
Web平台函式庫
下面列出的核心庫適用於 Dart Web 平台(程式碼編譯成 JS 來執行)。
dart:html 為 Web 應用開發所提供的 HTML 元素和其它資源。 |
|
dart:indexed_db 客戶端上使用的可以索引的鍵值對儲存。 |
|
dart:js , dart:js_util , package:js dart:js_util 為互操作提供了低階原語 (Low-Level Primitives),通常情況下我們更推薦使用 package:js 中提供的更高階的註解內容,因為它們更有助於更簡潔地表達和體現互操作性。請不要直接使用 dart:js 了,那些 API 已被標記為已廢棄
|
|
dart:svg 用於可縮放的向量圖形 (SVG)。 |
|
dart:web_audio 用於瀏覽器的高保真音訊程式設計。 |
|
dart:web_gl 用於瀏覽器的 3D 程式設計。 |