跳到主内容

入门:命令行与服务器应用

按照这些步骤开始使用 Dart SDK 开发命令行和服务器应用。首先,您将在浏览器中体验 Dart 语言,无需下载。然后,您将安装 Dart SDK,编写一个小程序,并使用 Dart VM 运行该程序。最后,您将使用 AOT(预先,ahead of time)编译器将完成的程序编译为原生机器码,并使用 Dart 运行时执行该机器码。

1. 在 DartPad 中运行 Dart 代码

#

使用 DartPad,您可以无需下载即可体验 Dart 语言和 API。

例如,这里有一个嵌入式 DartPad,可让您试用一个小型 Hello World 程序的代码。点击 Run 运行应用;输出将显示在控制台视图中。尝试编辑源代码——也许您想将问候语更改为使用另一种语言。

void main() {
  print('Hello, World!');
}

更多信息

2. 安装 Dart

#

要开发实际应用,您需要一个 SDK。您可以直接下载 Dart SDK(如下所述),或者下载 Flutter SDK,后者包含了完整的 Dart SDK。

使用 Chocolatey 安装稳定版 Dart SDK。

安装 Dart SDK

C:\> choco install dart-sdk
  1. 执行以下一次性设置

    sudo apt-get update
    sudo apt-get install apt-transport-https
    wget -qO- https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /usr/share/keyrings/dart.gpg
    echo 'deb [signed-by=/usr/share/keyrings/dart.gpg arch=amd64] https://storage.googleapis.com/download.dartlang.org/linux/debian stable main' | sudo tee /etc/apt/sources.list.d/dart_stable.list
  2. 安装 Dart SDK

    sudo apt-get update
    sudo apt-get install dart

使用 Homebrew,安装 Dart 非常简单。

brew tap dart-lang/dart
brew install dart

3. 创建一个小型应用

#

使用 dart create 命令和 console 模板创建一个命令行应用

dart create -t console cli

此命令会创建一个小型 Dart 应用,包含以下内容

  • 一个主 Dart 源文件 bin/cli.dart,包含一个顶层 main() 函数。这是应用的入口点。
  • 一个附加 Dart 文件 lib/cli.dart,包含应用的功能,并被 cli.dart 文件导入。
  • 一个 pubspec 文件 pubspec.yaml,包含应用的元数据,包括应用依赖哪些以及需要这些包的哪些版本的信息。

4. 运行应用

#

要从命令行运行应用,请在应用的顶层目录中使用 Dart VM 运行 dart run 命令

cd cli
dart run
Hello world: 42!

如果您想运行带有调试支持的应用,请参阅Dart DevTools

5. 修改应用

#

我们来定制刚刚创建的应用。

  1. 编辑 lib/cli.dart 来计算不同的结果。例如,将之前的值除以二(关于 ~/ 的详情,请参阅算术运算符

    dart
    int calculate() {
      return 6 * 7 ~/ 2;
    }
  2. 保存您的更改。

  3. 重新运行应用的主入口点

    dart run
    Hello world: 21!

更多信息:编写命令行应用

6. 为生产环境编译

#

上述步骤使用 Dart VM(dart)运行应用。Dart VM 经过优化,可实现快速增量编译,在开发过程中提供即时反馈。现在您的小应用已完成,是时候使用 AOT 编译将 Dart 代码编译为优化的原生机器码了。

使用 dart compile 工具将程序 AOT 编译为机器码

dart compile exe bin/cli.dart

注意编译后的程序如何立即启动,并快速完成

time bin/cli.exe
Hello world: 21!

real	0m0.016s
user	0m0.008s
sys	0m0.006s

接下来做什么?

#

查阅这些资源

如果遇到困难,请在社区与支持中寻找帮助。