Dart简介:

Dart诞生于2011年10月10日,Dart是一种“结构化的web编程”语言,Dart虽然是谷歌开发的计算机编程语言,但后来被ECMA认定位标准,这门语言用于Web、服务端、移动应用和物联网等领域的开发;

编程语言有这么多种类,Flutter为什么要选择Dart作为开发语言呢?这是因为Dart更符合构建用户界面的方式;

以下是Flutter团队看重Dart语言的部分特性:

1.Dart是AOT(Ahead Of Time)编译的,编译快速,可预测的本地代码,是Flutter几乎都可以使用Dart编写,这不仅使Flutter变得更快,而且几乎所有的组件都可以定制;

2.Dart也可以JIT(Just In Time)编译,开发周期异常快,工作流颠覆常规(包括Flutter的热重载);

3.Dart可以更轻松的创建以60fps运行的流畅动画和转场,Dart可以在没有锁的情况下进行对象分配和垃圾回收,就像JavaScript一样,Dart避免了抢占式调度和共享内存(因此不需要锁),由于Flutter应用程序被编译为本地代码,因此不需要在领域之间建立缓慢的桥梁,它的启动速度也快的多;

4.Dart使Flutter不需要单独的声明式布局语言,或单独的可视化界面构建器,因为Dart的声明式编程布局易于阅读和可视化,所有的布局使用一种语言,聚集在一处,Flutter很容易提供高级工具,使布局更简单;

Dart重要概念:

1.所有的东西都是对象,无论是变量、数字、函数等都是对象。所有的对象都是类的实例。所有的对象都继承自内置的Object类,这点类似于Java语言“一切皆为对象”;

2.程序中制定数据类型使得程序合理地分配内存空间,并帮助编译器进行语法检查,但是,指定类型不是必须的,Dart语言是弱数据类型;

3.Dart代码在运行前解析,指定数据类型和编译时的常量,可以提高运行速度;

4.Dart程序有统一的程序入口:main();

5.Dart没有public、protected和private的概念,私有特性通过变量或函数加上下划线来表示;

6.Dart支持anync/await异步处理;

7.Dart语言常用库:

dart:async  异步编程支持,提供Future和Stream类;

dart:collection  对dart:core提供更多的集合支持;

dart:convert  不同类型(JSON,UTF-8)间的字符编码、解码支持;

dart:core  Dart语言内建的类型、对象以及dart语言核心的功能;

dart:html  网页开发用到的库;

dart:io  文件读写I/O相关操作的库;

dart:math  数字常量及函数,提供随机数算法;

dart:svg  事件和动画的矢量图象支持;

其中如下三个开发库的使用频率最高:

dart:core  核心库,包括strings、numbers、collections、errors、dates、URIs等;

dart:html  网页开发里DOM相关的一些库;

dart:io  I/O命令行使用的I/O库;

注:dart:core库是Dart语言初始化已经包含的库,其他的任何库在使用前都需要加上import语句。列如使用dart:html可以使用如下的命令:import ‘dart:html’

Flutter学习笔记(2)--Dart语言简介的更多相关文章

  1. Flutter学习二之Dart语言介绍

    上次我记录了Flutter的环境搭建,这次来简单记录一下Drat语言,Flutter是 Google推出并开源的移动应用开发框架,开发语言是Dart,那么Dart语言和其他的语言在语法上有上面区别呢, ...

  2. Flutter学习笔记(3)--Dart变量与基本数据类型

    一.变量 在Dart里面,变量的声明使用var.Object或Dynamic关键字,如下所示: var name = ‘张三’: 在Dart语言里一切皆为对象,所以如果没有将变量初始化,那么它的默认值 ...

  3. Flutter学习笔记(4)--Dart函数

    如需转载,请注明出处:Flutter学习笔记(4)--Dart函数 Dart是一个面向对象的语言,所以函数也是对象,函数属于Function对象,函数可以像参数一样传递给其他函数,这样便于做回调处理: ...

  4. Flutter学习笔记(5)--Dart运算符

    如需转载,请注明出处:Flutter学习笔记(5)--Dart运算符 先给出一个Dart运算符表,接下来在逐个解释和使用.如下:                            描述       ...

  5. Flutter学习笔记(8)--Dart面向对象

    如需转载,请注明出处:Flutter学习笔记(7)--Dart异常处理 Dart作为高级语言,支持面向对象的很多特性,并且支持基于mixin的继承方式,基于mixin的继承方式是指:一个类可以继承自多 ...

  6. Flutter学习笔记(6)--Dart流程控制语句

    如需转载,请注明出处:Flutter学习笔记(5)--Dart流程控制语句 条件语句:if.if...elseif.if...elseif...else ; ) { print('优秀'); } &g ...

  7. Flutter学习笔记(6)--Dart异常处理

    如需转载,请注明出处:Flutter学习笔记(6)--Dart异常处理 异常是表示发生了意外的错误,如果没有捕获异常,引发异常的隔离程序将被挂起,并且程序将被终止: Dart代码可以抛出并捕获异常,但 ...

  8. Flutter学习笔记(1)--环境安装

    flutter最近显得格外的火,公司的同事也一直在谈论flutter,感觉自己不学学就要失业了...所以决定顺应潮流学习以下flutter,做一下学习笔记,希望可以给需要的同学带来一些帮助~ 正文为f ...

  9. Flutter学习笔记(15)--MaterialApp应用组件及routes路由详解

    如需转载,请注明出处:Flutter学习笔记(15)--MaterialApp应用组件及routes路由详解 最近一段时间生病了,整天往医院跑,也没状态学东西了,现在是好了不少了,也该继续学习啦!!! ...

  10. Flutter学习笔记(9)--组件Widget

    如需转载,请注明出处:Flutter学习笔记(9)--组件Widget 在Flutter中,所有的显示都是Widget,Widget是一切的基础,我们可以通过修改数据,再用setState设置数据(调 ...

随机推荐

  1. Arraylist 和 linkedlist || hashset 和treeset. || hashMap 和 TreeMap

    参考:http://liuyuan418921673.iteye.com/blog/2256120 1. ArrayList和LinkedList的区别和使用场景   ArryList 与linked ...

  2. Adaptive device-initiated polling

    A method includes periodically sending a polling call to an enterprise system outside the firewall a ...

  3. Leetcode 136 Single Number 亦或

    题意就是从一堆数中找出唯一的一个只存在一个的数.除了那个数,其他的数都是两个相同的数. 通过亦或的性质: 1)a^a = 0 0^a = a 2)交换律 a^b = b^ a 3)结合律 (a^b)^ ...

  4. 去除WPF中3D图形的锯齿

    原文:去除WPF中3D图形的锯齿 理论上讲PC在计算3D图形的时候是无法避免不出现锯齿的,因为3D图形都是又若干个三角形组成,如果3D图形想平滑就必须建立多个三角形,你可以想象一下正5边形和正100边 ...

  5. 机器学习: TensorFlow with MLP 笑脸识别

    Tensor Flow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库.节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数 ...

  6. 组态DNS、搜索域名和主机名

    一个.组态DNS和搜索领域 特别配置DNS该文件是/etc/resolv.conf:同时,我们可以ifcfg-eth0网卡的配置和其他配置文件中指定的. 演示样本: [root@instructor ...

  7. Linux性能测试 dmesg命令

    dmesg 命令主要用来显示内核信息.使用 dmesg 可以有效诊断机器硬件故障或者添加硬件出现的问题.  另外,使用 dmesg 可以确定您的服务器安装了那些硬件.每次系统重启,系统都会检查所有硬件 ...

  8. WPF 海康威视网络摄像头回调方式实现断连提示,降低时延

    原文:WPF 海康威视网络摄像头回调方式实现断连提示,降低时延 项目需要使用海康威视网络摄像头接入实时视频数据,使用海康威视官方SDK开发,发现没有断连提示的功能,故开发了一个断连提示的功能 在开发过 ...

  9. WPF中样式和行为和触发器

    原文:WPF中样式和行为和触发器 样式简介:样式(style)是组织和重用格式化选项的重要工具,不是使用重复的标记填充XAML,以便设置外边距.内边距.颜色以及字体等细节.而是创建一系列封装所有这些细 ...

  10. 两个同名controller导致调用崩溃

    之前遇到一个很诡异的bug,大概情况如下: 生成成功,运行正常,调试正常 但是调用目标controller的目标方法,运行自动中断,调试自动中断 没有任何明确的错误提示,包括调试都没有弹窗报错 调用其 ...