Flutter学习2 - Dart

Dart语言特点:

1、强类型语言,静态类型

  • Dart 2.0 开始便是强类型语言,而且是静态类型的(可以类比Java,C#等)
  • 强类型语言的优点:所有类型的检查必须在编译的时候完成
  • 前端开发的 js 语言是弱类型的语言
  • 强类型的语言需要在定义的时候指定类型,如果不指定,编译器也可以在赋值的时候推断出变量类型

2、面向对象的语言,OOP

  • 面向对象的语言有:Java、Kotlin、Objective-C、Swift、Python、C++、C#、Ruby、PHP等

3、支持 JIT 和 AOT

  • JIT(Just In Time):即时编译,开发期间,更快编译,更快重载(每次在修改完代码后不需要重新运行项目,代码便可以应用到 App 上,用的就是JIT特性)
  • JIT 的劣势也显而易见,JIT需要在运行的时候将代码编译成机器码,这样会导致程序运行慢,甚至卡顿(开发时运行项目有时会卡顿)
  • AOT(Ahead Of Time):事前编译,release期间,更快更流畅(如C、C++,在编译的时候,直接将代码编译成机器码)
  • AOT的优势也显而易见,就是事前编译,将代码编译成二级制机器码部署到用户设备上,这样用户在运行程序时就不需要再进行编译,这样就使得我们加载和运行代码的速度加快

开发时使用 JIT 使得编译更快,无需运行项目即可将修改的代码应用到app,但可能会有卡顿;
release 时使用 AOT,保障用户使用 app 时的流畅

相关推荐
AI成长日志19 分钟前
【笔面试算法学习专栏】二分查找专题:力扣hot100经典题目深度解析
学习·算法·面试
m0_564914921 小时前
AI学习课堂网站丨OPENMAIC丨清华团队开源项目
学习
开源盛世!!2 小时前
3.26-3.27学习笔记
笔记·学习
我的xiaodoujiao3 小时前
API 接口自动化测试详细图文教程学习系列7--相关Python基础知识6
python·学习·测试工具·pytest
山川行3 小时前
Python快速闯关8:内置函数
java·开发语言·前端·笔记·python·学习·visual studio
charlie1145141913 小时前
嵌入式C++教程实战之Linux下的单片机编程:从零搭建 STM32 开发工具链(2) —— HAL 库获取、启动文件坑位与目录搭建
linux·开发语言·c++·stm32·单片机·学习·嵌入式
知识分享小能手4 小时前
MongoDB入门学习教程,从入门到精通,MongoDB聚合框架(7)
数据库·学习·mongodb
今儿敲了吗4 小时前
算法复盘——前缀和
笔记·学习·算法
啊我不会诶5 小时前
最小生成树
c++·笔记·学习·算法
STLearner5 小时前
AI论文速读 | 元认知监控赋能深度搜索:认知神经科学启发的分层优化框架
大数据·论文阅读·人工智能·python·深度学习·学习·机器学习