Hello Dart

2,708 阅读4分钟

欢迎点赞,转载请注明出处

Flutter框架使用Dart作为它的实现程序语言,至于为什么选择Dart,官网有详细地说明,你可以点这里,但我认为最重要的原因应该是Dart和Flutter都是谷歌官方出品的吧,肥水不流外人田🤠。我们之前安装Flutter SDK中就已经包含了Dart SDK,所以我们现在可以直接使用Dart写点什么了。安装Flutter Plugin也会自动安装Dart Plugin。实际在构建Flutter时不只用到了Dart,还用到了C,C++,Skia(一个二维绘制引擎)。Flutter架构图如下:

Android Studio之Hello Dart

我们可以使用Android Studio编译和运行Dart程序,前面章节的Hello Flutter和Hello Widget工程已经这么做了。我们再写一个纯粹一点的Hello Dart。

在Android Studio中,我们找不到类似New Flutter Project这样New Dart Project这样的菜单项,因为我们现在要做还不是一个Project类型的Dart项目。尝试把flutter_app项目中的lib\main.dart代码都注释掉,然后写入以下代码,跟大多数编程语言一样,每个Dart应用都有一个main()函数。

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

此时,运行项目你会发现真机或模拟器上没有任何的输出,但也没有任何报错信息。这是因为,我们此时运行的main.dart被默认配置成Flutter项目类型。我们需要配置成命令行模式的Dart应用。参照下图所示,打开Edit Configurations...

点击‘+’号,选择Dart Command Line App类型:
Dart File处选择lib/main.dart文件,因为之前配置文件名已经有了main.dart,所以我们这里可以新取个名字,如main_command.dart:
选择main_command.dart配置后,运行后可以看到在Android Studio的Run窗口内有 "Hello, Dart"的输出:
Run窗口内有一条警告:"Warning: Interpreting this as package URI",应该是AS默认检查机制,因为对我们程序并没有什么影响,此时可以忽略。

前面我们使用Android Studio运行了一个Hello Dart,让人感觉有种杀鸡用牛刀的感觉,还有其他几种运行Dart命令行应用的方式。

WebStorm之Hello Dart

安装JetBrains WebStorm时,可以选择安装Dart插件:

如果安装时没有选择,同Android Studio一样,可以在插件市场里安装:
重启WebStorm,New Project时选择Dart类型,会有个警告:"the Dart SDK home does not exist.":
我们只需要从之前安装的Flutter SDK的目录中选择子目录bin/cache/dart-sdk即可,去掉Generate sample content选项(这些sample是生成一个web示例):
也可以在WebStorm里全局设置Dart SDK Path:
右键菜单选择新建一个Dart File,添加到刚才的空工程里,同前,写上一段Hello Dart代码:
同在Android Studio里一样,配置运行项为Dart Command Line App类型:
点击Run运行项目,可以看到Run控制台输出Hello, Dart!

ItelliJ IDEA之Hello Dart

使用JetBrains ItelliJ IDEA运行一个Dart项目,类似于WebStorm,毕竟都是JetBrains公司的全家桶系列的,使用方式上都是通用的,下面以IDEA Edu(教育免费版)为例,贴出主要步骤截图:

Visual Studio Code之Hello Dart

下面以Visual Studio Code 1.42.1为例,运行一个Hello Dart程序:

Extensions选择安装Dart:
新建立一个文件夹,文件夹内新建main.dart文件,VS Code根据后缀dart类型会自动关联Flutter SDK,可以看到最底部的Flutter 1.9.1+hotifx.6版本信息:
第一次运行程序时,会自动生成launch.json配置文件:
将第9行的 "bin/main.dart"改为正确的Dart运行文件路径,即"main.dart",再次运行可以看到控制台输出 Hello,Dart!

DartPad之Hello Dart

使用开源DartPad可以很方便地在浏览器中体验Dart或Flutter编程语言线上工具,但它在Dart开发上会有些限制或不同,如无法引用包图片。

命令行之Hello Dart

使用命令行的方式,第一次运行时可能会出现下面的错误,这个问题跟前文WebStorm的the Dart SDK home does not exist.",是类似问题:

我们可以配置一个DART_HOME环境变量,或直接把dart执行程序目录加入到PATH环境变量中,如下图:
然后,我们就可以直接使用dart命令行的方式来运行程序了,如: "dart HelloDart/main.dart"这样:

至此,已经介绍了多种运行dart命令行程序的方法,大家有兴趣的话都可以试试看。

上一篇 Hello Widget 下一篇 Dart变量、类型和流程控制