基本情報
概要
Dart(ダート)とは、Googleが開発したWebアプリケーション開発向けプログラミング言語です。クラスベースのオブジェクト指向言語で、大規模アプリケーション/サービス開発に対応できます。
基本説明
Dartは開発者に歓迎される高度な各種機能が揃っています。
Googleは「シンプルで意外性のないオブジェクト指向プログラミング言語」だとしています。
経緯
当初は「Dash」と呼ばれていました。
2011年に発表されました。
主な特徴
JavaScriptの代替を狙う
Webアプリケーションの大規模化により、標準でクラス/モジュール機能を持たないJavaScriptでは限界が見え始めました。そこで、DartはJavaScriptの代替となることを目的に開発されました。
Dartは、「JavaScript言語では解決できない言語上の問題点を解決」「優れたパフォーマンス」「大規模なプロジェクト用途にも耐えうる」「セキュア」などの観点で設計されました。
「構文スコープ」「クロージャ」「オプショナル静的型」など、Javaにはない機能も搭載しています。
しかし、2015年3月、Chromeでのサポートを断念し、DartをJavaScriptへコンパイルして使用する道へ進んでいます。
JavaScriptトランスパイラ
DartプログラムをJavaScriptへ変換できます。
このことにより、最新の主要Webブラウザで動作できます。
クライアント/サーバの両方に対応
サーバサイド/クライアントサイドの両方をDartでコーディングできます。
シンプルで馴染みやすい文法
文法は、Javaプログラマにはなじみのあるものが多いため、学習が容易です。
「構造化」「柔軟性が高い」などの特徴があります。
クラスベースのオブジェクト指向言語
Dartはクラスベースのオブジェクト指向をサポートしているため、中規模/大規模開発に対応できます。
「すべてをオブジェクトとして扱う」「クラスベース」「単一継承」「暗黙的インターフェイス」などの特徴を持ちます。
関数を引数へ渡したり、変数へ代入できます。
静的型付け
変数の型について、「JavaScriptのような動的型付け」と「C++/Javaのような静的型付け」を、変数ごとに任意に選択できます。動的型付けは「var」で宣言を行い、静的型付けは型名を指定します。
静的型付けにより、型安全性を保つことができ、「コンパイル時エラー検出」「IDEインテリセンス」などの恩恵があります。
「プロトタイプ開発時は開発スピード優先の動的型付け」、「プロダクト開発時は安全性優先の静的片付け」のような使い分けが可能です。
モジュール管理
Dartでは、各モジュールを「ライブラリ」という単位で管理できます。ソースコードファイル/ライブラリの関係を記述する構文も用意されています。
スレッド
単一スレッドで、並行処理はアイソレートで実行可能です。
実行環境
Dartプログラム実行用仮想マシン「DartVM」環境で、直接実行できます。
他の環境の場合は、DartプログラムをJavaScriptへコンパイルしてJavaScriptエンジンを搭載するWebブラウザで実行します。
同様製品
同様な機能を提供する製品として、次のようなものがあります。
オープンソース製品:「TypeScript」など。
導入事例
Google内では「Google Ads」「Google Fiber」「Google Express」「Googleの社内セールス」などの各チームで採用されています。
ライセンス情報
Dartのライセンスは「BSDライセンス」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。
ダウンロード
※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。