简单介绍Dart语言

Dart是一种针对客户优化的语言,亦可在任何平台上快速开发的应用陈旭。

目标是为多平台开发提供最高效的变成语言,并为应用程序框架搭配了领会的运行时执行平台。

Dart特点

Dart语言

  1. 类型安全,使用静态型检查来确保变量的值 始终与变量的静态类型相匹配
  2. 健全的空值安全,只有声明值可以为空,值才可以为空

Dart库

  • 为每个 Dart 程序提供的内置类型,集合与其他核心功能 (dart:core)

  • 更丰富的集合类型,诸如队列、链接列表、哈希图和二叉树 (dart:collection)

  • 用于在不同的数据表示形式之间进行转换编码器和解码器,包括 JSON 和 UTF-8 (dart:convert)

  • 数学常数和函数,以及随机数生成 (dart:math)

  • 为非 Web 应用程序提供的文件、套接字、HTTP 和其他 I/O 支持 (dart:io)

  • 异步编程支持,比如 Future 和 Stream 类 (dart:async)

  • 能够有效处理固定大小的数据(例如,无符号的 8 字节整数)和 SIMD 数字类型的列表 (dart:typed_data)

  • 用于提供 C 语言风格代码互通性支持的外部函数接口 (dart:ffi)

  • 使用 isolates 的并发编程 — 这些独立的工作程序与线程相似但它们不共享内存并仅通过消息进行通信 (dart:isolate)

  • 基于 Web 的应用程序中需要与浏览器和文档对象模型 (DOM) 交互的 HTML 元素和其他资源 (dart:html)

除了核心库,Dart还通过一整套软件包提供了许多API。Dart团队发布了许多有用的补充包,

Dart平台

Dart的编译器技术可让您以不同方式运行代码

  • 原生平台:针对面向移动和桌面设备的应用程序,Dart拥有具有实时(JIT)编译功能的DartVM和用于生成机器代码的提前(AOT)编译器
  • Web平台:Dart可用于编译开发和生产阶段的面向Web的应用,它的Web编译器可将Dart转换为JavaScript

Flutter 框架 是一款流行的多平台 UI 工具包,由 Dart 语言强力驱动,提供一套工具和 UI 库,帮助开发者们在 iOS、Android、macOS、Windows、Linux 和 Web 平台构建优秀的 UI 体验。

原生平台的 Dart (JIT 和 AOT 机器码)

在开发过程中,快速的开发周期对于迭代至关重要。 Dart VM 提供了一个实时编译器 (JIT),编译器拥有增量重编译功能 (支持热重载)、运行数据收集(用于驱动 DevTools)以及丰富的开发调试支持。

当应用程序可以部署到生产环境时 (无论是发布到应用商店还是部署到生产后端), Dart AOT 编译器可以编译成原生的 ARM 或 x64 的机器码。经过 AOT 编译的应用程序将稳定快速地启动。

经过 AOT 编译的代码会在高效的 Dart 运行环境中运行,该运行环境拥有健全的 Dart 类型系统,并使用快速对象分配和 分代垃圾收集器 来管理内存。

Dart语言简介的更多相关文章

  1. Flutter学习笔记(2)--Dart语言简介

    Dart简介: Dart诞生于2011年10月10日,Dart是一种"结构化的web编程"语言,Dart虽然是谷歌开发的计算机编程语言,但后来被ECMA认定位标准,这门语言用于We ...

  2. Dart 语言简易教程系列

    google Fuchsia系统 及 dart语言简介 在 InteIIiJ IDEA 中搭建 Dart 的开发环境 Dart Linux 开发环境搭建 Dart 语言简易教程(一) Dart 语言简 ...

  3. Flutter教程- Dart语言规范-知识点整理

    Flutter教程- Dart语言知识点整理 Dart语言简介 Dart语言介绍 ① 注释的方式 ② 变量的声明 ③ 字符串的声明和使用 ④ 集合变量的声明 ⑤ 数字的处理 ⑥ 循环的格式 ⑦ 抛异常 ...

  4. Dart语言基础

    文章目录 前言:dart语言简介 一.变量 1.1.类型推导 1.2.默认值 1.3.Final 和 const修饰符 二.内建类型 2.1.数据类型 2.2.集合的相关操作 三.函数 3.1.函数的 ...

  5. dart系列之:dart语言中的变量

    目录 简介 dart中的变量 定义变量 变量的默认值 Late变量 常量 总结 简介 flutter是google在2015年dart开发者峰会上推出的一种开源的移动UI构建框架,使用flutter可 ...

  6. dart系列之:dart语言中的内置类型

    目录 简介 Null 数字 字符串 布尔值 列表 set和map 简介 和所有的编程语言一样,dart有他内置的语言类型,这些内置类型都继承自Object,当然这些内置类型是dart语言的基础,只有掌 ...

  7. dart系列之:dart语言中的特殊操作符

    dart系列之:dart语言中的特殊操作符 目录 简介 普通操作符 类型测试操作符 条件运算符 级联符号 类中的自定义操作符 总结 简介 有运算就有操作符,dart中除了普通的算术运算的操作符之外,还 ...

  8. 第一章.C语言简介

    C语言第一章 C语言简介   目录 一.C语言介绍 二.C语言特点 三.Hello World 四.转义符 五.占位符 六.俄罗斯方块游戏 七.文件下载 一.C语言介绍 C是一种通用的编程语言,广泛用 ...

  9. JavaScript学习01 语言简介、基本使用和变量声明

    JavaScript语言简介.基本使用和变量声明 JavaScript是网景(Netscape)公司开发的一种基于客户端浏览器.面向对象.事件驱动式的网页脚本语言. JavaScript的前身叫Liv ...

  10. 00-Java 语言简介

    一.开发环境搭建: (一).JAVA语言简介: 1.JAVA语言简介: (1)什么是JAVA:Java是一种计算机编程语言.它是一种计算机编程语言.它是一种软件开发平台.它是一种软件运行平台.它是一种 ...

随机推荐

  1. 2022第五空间-web部分wp+复盘总结

    打了一天,麻了,大佬tql,这次get到了不少东西,一是一个不太常见的宽字节注入,我是真的没想到,而且后面也是看了wp理解了好一会才弄明白. 0x01: 题目是一个登录框,但是基本上是过滤掉了所有的常 ...

  2. Kubernetes的kubectl常用命令速记

    文章转载自:https://mp.weixin.qq.com/s/0kqQzeA-MzCOhPMkmiR4_A kubectl是用来管理Kubernetes集群的命令行工具. kubectl默认在&q ...

  3. yaml文件执行后常见错误解决

    yaml文件中个别数值有大写,报错信息如下 : The Deployment "my-nginx" is invalid: spec.template.spec.volumes[0 ...

  4. rocketmq 4.x 双主双从同步读写

    文章标题写的是多M多S同步双写集群安装,但是看具体参数配置,写的是异步复制Master brokerRole=ASYNC_MASTER flushDiskType=SYNC_FLUSH #刷盘方式 # ...

  5. PAT (Basic Level) Practice 1022 D进制的A+B 分数 20

    输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1<D≤10)进制数. 输入格式: 输入在一行中依次给出 3 个整数 A.B 和 D. 输出格式: 输出 A+ ...

  6. nsis制作新版迅雷安装界面

    终于搞出来一点名堂,不借用皮肤插件,圆角,无标题栏拖动,渐隐渐显,纯nsis代码编写,相似度大概也有95%以上了. 演示程序下载

  7. 关于csh-C-shell的记录

    csh,由柏克莱大学的 Bill Joy 设计的,语法有点类似C语言,所以才得名为 C shell ,简称为 csh Bill Joy 是一个风云人物,他创立了 BSD 操作系统,开发了 vi 编辑器 ...

  8. 把train数据集生成txt(test同理)

    import cv2 import numpy as np import os import sys import pickle data_dir = os.path.join("./&qu ...

  9. KTV和泛型(3)

    泛型除了KTV,还有一个让人比较疑惑的玩意,而且它就是用来表达疑惑的:? 虽然通过泛型已经达到我们想要的效果了,例如: List<String> list = new ArrayList& ...

  10. 关于StringBuffer和StringBuilder的使用

    String.StringBuffer.StringBuilder三者的异同? String:不可变的字符序列:底层使用char[]存储 StringBuffer:可变的字符序列:线程安全的,效率低: ...