目录

一、安装 Dart SDK

二、安装 Traefik CN(官网 www.trae.cn)

三、测试 Dart 语言介绍与注意事项

2. Dart 语言介绍(一下为介绍可以不用看)

2.1 主要特点

2.2 主要应用场景

2.3 核心语法示例

一、安装 Dart SDK

Dart SDK 是 Dart 语言的官方工具包,它提供了一整套完善的工具和库,用于帮助编写、编译、调试和运行 Dart 程序。

1. 百度网盘下载 Dart SDK:

通过网盘分享的文件:Dart_x64.stable.setup.exe
链接:https://pan.baidu.com/s/1q_F-bVabhPL1Nz7eW12K3w 提取码:4321

Dart SDK 安装界面

输入:dart --version 如果输出版本则证明安装成功。Dart 版本验证

二、安装 Traefik CN(官网 www.trae.cn)

注意:不是那个 Work 版本,是 IDE 版本。

Traefik 官网界面

安装 Dart 插件:

Dart 插件安装界面

这样 Dart 环境变量就配置完成了。

三、测试 Dart 语言介绍与注意事项

1. 注意事项:

1. Dart 语言文件都是以 .dart 结尾。

2. Dart 文件的入口方法为 main 方法。

3. Dart 文件中绝大部分语句都要以分号结尾,但像 '{}' 后通常不加分号。

测试 Hello World:看到输出正常就表示配置完毕。

Hello World 测试输出

2. Dart 语言介绍(一下为介绍可以不用看)

Dart 是一种由 Google 开发的、面向对象的、强类型的客户端优化编程语言。它于 2011 年首次亮相,旨在为 Web、移动端和桌面端提供高性能的开发体验。Dart 以其清晰的语法、高效的运行时和强大的工具链而闻名,尤其因其在 Flutter 框架中的核心地位而广受欢迎。

2.1 主要特点

  • 强类型与类型推断:Dart 是静态类型语言,支持类型推断(使用 varfinal 声明变量时,类型可自动推导),这有助于在开发早期捕获错误,同时保持代码的简洁性。
  • 面向对象:支持类、接口、继承、混入(Mixin)等现代面向对象特性。
  • 空安全(Null Safety):Dart 的空安全特性是默认启用的,这意味着变量默认不可为空(non-nullable),必须显式声明为可空(String?)才能存储 null 值,从而有效避免空指针异常。
  • 异步编程:通过 FutureStream 以及 async/await 语法,提供了简洁高效的异步操作支持,非常适合处理 I/O 密集型任务。
  • 跨平台编译:Dart 代码可以编译为:
    • 原生机器码:通过 AOT(Ahead-Of-Time)编译为高性能的本地可执行文件,用于移动和桌面应用(Flutter 的主要模式)。
    • JavaScript:通过 dart2js 编译器,可将 Dart 代码编译为 JavaScript,用于 Web 应用。
    • 字节码:通过 JIT(Just-In-Time)编译在开发时实现热重载(Hot Reload),极大提升开发效率。
  • 高效的垃圾回收:采用分代垃圾回收机制,减少停顿时间,保证应用流畅运行。

2.2 主要应用场景

  • Flutter 应用开发:这是 Dart 最主流的应用场景。Flutter 是 Google 推出的开源 UI 工具包,使用 Dart 语言,可以一套代码同时构建高性能、高保真的 iOS、Android、Web、Windows、macOS 和 Linux 应用程序。
  • Web 开发:通过 AngularDart(已逐步转向更现代的框架)或直接使用 dart2js 编译为 JavaScript,可以构建复杂的单页应用(SPA)。
  • 命令行工具与服务器端:Dart 提供了丰富的核心库和包管理器(pub),非常适合编写脚本、命令行工具以及使用框架(如 Aqueduct、Shelf)构建后端服务。
  • 桌面应用:借助 Flutter 对桌面平台(Windows、macOS、Linux)的支持,Dart 也成为开发跨平台桌面 GUI 应用的选择之一。

2.3 核心语法示例

以下是一个简单的 Dart 程序,展示了其基本语法特性:

// 定义一个类
class Person {
  // 声明不可为空的字符串属性
  final String name;
  // 声明可为空的整型属性
  int? age;

  // 构造函数,使用初始化列表
  Person(this.name, {this.age});

  // 方法
  void introduce() {
    // 使用空安全操作符 ?. 和 ?? 
    print('Hello, I am $name, and I am ${age ?? 'unknown'} years old.');
  }
}

void main() async {
  // 类型推断
  var person = Person('Alice', age: 30);
  person.introduce();

  // 异步示例
  String data = await fetchData();
  print('Fetched data: $data');
}

// 模拟异步函数
Future<String> fetchData() async {
  await Future.delayed(Duration(seconds: 1));
  return 'Data from server';
}

通过以上介绍,可以看出 Dart 是一门设计现代、功能全面且以开发者体验为核心的语言。其与 Flutter 的深度结合,使其在跨平台移动开发领域占据了主导地位。对于初学者,掌握 Dart 是进入 Flutter 生态系统的第一步,其清晰的语法和强大的工具链将带来愉悦的开发体验。

Logo

AtomGit AI 社区提供模型库、数据集、Agent、Token等资源

更多推荐