Dart

出典: フリー教科書『ウィキブックス(Wikibooks)』
ナビゲーションに移動 検索に移動
プログラミングDart

Dart(ダート)はGoogleがJavaScriptを置き換えることを目的に開発したスクリプト言語です。

インストール方法[編集]

GoogleがAndroidスマートフォン用のスクリプト言語としてDartを開発し採用していますが、しかしDartそのものの実行だけなら Android Studio は不要です。

Windowsの場合[編集]

GitHub の Dart SDK archive でDartインタプリタ(『Dart SDK』もような名前です)を入手できる。SDK とは一般に Software Development Kit の略です。

DartインタプリタをGitHubなどからダウンロードしてきて解凍すると一番上のフォルダとして dart-sdk フォルダが表れるので、その dart-sdk フォルダごと、自分のパソコンのインストールしたいフォルダに移動し、 dart-sdk フォルダ中にある「bin」フォルダへの環境変数PATHを登録する。(インスト-ル方法はGo言語やKotlinと同じ。)

この他のインストール方法として、パッケージ管理ツールChocolatey を用いたインストール方法もあり、Dart公式サイトでもその方法を紹介していますが、しかしそのchocolateyのインストール自体が難しいので(かなり設定が難しい)、こっちは説明を省略します。


さて、Dartのバージョン表示のコマンドは、

dart --version

です。

Dart VM version: 2.8.4 (stable) (Wed Jun 3 12:26:04 2020 +0200) on "windows_x64"

のようにバージョン番号が出たら、成功です。


Linuxの場合[編集]

Debian/Ubuntu系か、Fedora/CentOS系かで、インストール方法が大きく異なる。

Google のスマホのAndroid はLinuxをベースとしており、Dart実行環境もAndroid用のDart実行環境をベースにしているようである。(Fedora系でのインストール時に、Androidうんぬんのメッセージが表示される。)

その Android がDart開発時はどうやらDebianをベースにしているので、Debian系のほうがインストールが早く終わる。

Fedora/CentOS系の場合、ソースファイルからコンパイルする事になるが、その場合、公式のGitHubのdart-lang /sdkに方法が書いてあるので、その手順の通りにコマンド入力すればいい。

ただしDartは Python 2 系を前提にしている(MacやDebian や CentOSの古いバージョンでは、まだPython2が残っている)。果たしてPython3に切り替わっている2020年代の最新LinuxのUbuntuやFedoraで使うべきかどうか、判断は読者に任せる。


Hello World など[編集]

コード例
void main() {
  print("Hello world");
}


C言語をご存知なら、記法が似ていると感じるかもしれませんが、よくよく見ると、C言語ならあるinclude文が無いです。Dartでは、たかがコマンドラインに文字を表示する程度の標準出力では、いちいちincludeをする必要は無いのです。


なお、関数の出力の void は省略できます。よって

main() {
  print("Hello world");
}

でも実行可能です。


実行方法は、コマンドプロンプトあるいはWindows Terminalで、

dart ファイル名.dart

です。

文法の見た目がC言語に似てますが、しかしコンパイルは不要です。(C言語ではコンパイルが必要。)コンパイルせずに、上記の実行コマンドだけでdart用のソースコードを実行できます。

なお、日本語はWindows環境では文字バケする事があります(おそらく文字コードの事情)。 文字コードがANSIでもUTF-8でも、Windows環境では文字バケします。

日本語表示したい場合にはLinuxなどで使うのが安全でしょう(Linuxは文字コードがUTF-8)。


変数[編集]

Dartでは規格上、変数に整数型や浮動小数型などの型があります。Dart では、型は使っても使わなくても自由であり、型を使わなくても実行できますが、ただし下記のような決まりがあります。

型を使う場合[編集]

main() {
  int a  = 3;
  int b  = 2 * a;
  print (b); 
}
実行結果
6


型を省略する場合[編集]

Dartでは、型は var 宣言を使うことで 省略することもできます。

main() {
  var a  = 4;
  var b  = 1.23 ;
  print (a+b); 
}
実行結果
5.23

なお、var をつけずに変数だけ宣言しても、エラーになり、実行できないです。


文字列の表示など[編集]

文字列と変数の値を同時に表示したい場合には、下記コードのように${ 変数名 }で、引用符中で表示したい位置で指定します。

コード例

main() {
  var kazu  = 4;
  print ("kazu is ${kazu} \n"); 
}
表示結果
kazu is 4


改行などのエスケープシーケンスは他のプログラミング言語と同様、使えます。

「\n」そのものを表示したい場合は、先頭にもうひとつ「\」をつけて「\\n」のようにするだけです。

コード例

main() {
  print ("\\n"); 
}
表示結果
\n


コメントアウト[編集]

文をコメントアウトさせたい場合には、//や、/**/を使用します。

1行だけコメントアウトする場合[編集]

1行だけコメントアウトする場合は、下記コードのように//を行頭に指定します。

コード例

main() {
  // 猫の名前
  var cat  = "Miku";
  print ("The name of the cat is ${cat} \n"); 
}
表示結果
The name of the cat is Miku

複数行コメントアウトする場合[編集]

複数行コメントアウトする場合は、下記コードのように/**/で文を囲みます。

コード例

main() {
  /*動物の種類


      兎*/
  var animals  = ["cat", "dog", "rabbit"];
  print (animals); 
}
表示結果
[cat, dog, rabbit]


関数[編集]

関数を定義する場合は、型と関数名を設定します。変数と同様に型は使っても使わなくても自由ですが、変数と違ってvarを設定する必要もありません。

関数の定義[編集]

下記コードのように、基本的には型と関数名を設定して定義します。型は省略可能です。

コード例

main() {
  // 関数の定義
  int add(int x, int y) {
    int z = x + y;
    return z;
  }
}

関数の呼び出し[編集]

関数の呼び出しは、関数名と定義されている引数に任意の値を指定することで行えます。

コード例

main() {
  int add(int x, int y) {
    int z = x + y;
    return z;
  }
  // add関数に引数として1と2を指定する。
  print(add(1, 2));
}
表示結果

3


このページ「Dart」は、まだ書きかけです。加筆・訂正など、協力いただける皆様の編集を心からお待ちしております。また、ご意見などがありましたら、お気軽にトークページへどうぞ。