Dart编译技术与平台
Flexible compiler technology lets you run Dart code in different ways, depending on your target platform and goals:
- Dart Native: For programs targeting devices (mobile, desktop, server, and more), Dart Native includes both a Dart VM with JIT (just-in-time) compilation and an AOT (ahead-of-time) compiler for producing machine code.
- Dart Web: For programs targeting the web, Dart Web includes both a development time compiler (
dartdevc
) and a production time compiler (dart2js
).
Dart Native (VM JIT and AOT)
Dart Native enables running Dart code compiled to native ARM or X64 machine code for mobile, desktop, and server apps.
The Flutter framework is a popular multi-platform UI toolkit that’s powered by Dart Native when targeting mobile or desktop devices.
Lightning fast developer workflow (Dart VM JIT)
Having a fast developer cycle is critical for iteration.
The Dart VM has a just-in-time compiler (JIT) that supports both pure interpretation (as required on iOS devices, for example) and runtime optimization.
More information: dart
VM tool
Optimized production code (Dart AOT)
When apps are ready to be deployed to production — whether you’re publishing to an app store or deploying to a production backend — you can use the Dart AOT compiler to ahead-of-time compile your app to native ARM or X64 code machine code. Your AOT-compiled app starts instantly and runs smoothly.
The AOT-compiled code runs inside an efficient Dart runtime that enforces the sound Dart type system and manages memory using fast object allocation and a generational garbage collector.
More information: dart2aot
tool
Dart Web (JavaScript)
Dart Web enables running Dart code on web platforms powered by JavaScript. With Dart Web, you compile Dart code to JavaScript code, which in turn runs in a browser — for example, V8 inside Chrome.
The Flutter framework, a popular multi-platform UI toolkit, is powered by Dart Web when targeting web apps. The AngularDart framework, a popular web app toolkit, is also powered by Dart Web.
More information: Get started: web apps
Lightning fast developer workflow (Dart dev compiler)
The Dart dev compiler (dartdevc) is a Dart-to-JavaScript compiler that’s optimized for quick turnaround. Instead of using dartdevc directly, you use it with webdev
, a tool that supports core developer tasks such as running, debugging, and building.
More information:
Optimized production code (Dart JS compiler)
The dart2js
tool compiles Dart code to fast, compact, deployable JavaScript. It employs techniques such as dead-code elimination
More information:
https://dart.dev/platforms
相关文章
- 技术分享 | 测试平台开发-前端开发之Vue.js 框架的使用(二)
- 技术分享 | 软件测试入门必会-流程管理平台
- 技术分享 | Jenkins通过什么方式报警?
- 17届智能车竞赛技术报告 | 北京科技大学无线充电组
- 云平台-多租户技术设计
- 2022非常火过postman的一款技术人必备的接口测试神器:Apifox
- 那些年,追过的开源软件和技术
- 企业大数据系统构建实战:技术、架构、实施与应用》一3.3 本章小结
- 「SAP技术」已启用质检物料创建PO时候'STOCK TYPE'没有默认为X?
- 《OpenGL ES 2.0游戏开发(上卷):基础技术和典型案例》一6.4 点法向量和面法向量
- 《大规模Java平台虚拟化与调优》——1.3 大规模Java平台的技术因素
- 中国移动拥抱开源技术:建成全球最大的OpenStack云平台
- J2EE学习篇之--JQuery技术具体解释
- 技术科普三:SD-WAN的五大基本特性
- 随着各种工厂迅速将其业务转移到基于云的物联网平台,通用电气公司(GE)和西门子公司正在以完全不同的软件战略攻占这一高地。 越来越多制造业客户开始着眼于收集和分析运营技术数据,GE和西门子则以Predix和MindShpere云平台向不同方向发展。 GE试图通过平台开放和合作伙伴关系走向工业市场的
- 数据科学家之路——数据预处理技术基础
- 物联网技术渐趋成熟 车联网应用或成市场主驱力