グーグル、新言語「Dart」を発表。JavaScriptのようなWebプログラミングを想定
グーグルは10月10日、予想されていた通り新言語「Dart」を発表しました。
DartはWebアプリケーションの開発を想定したプログラミング言語。実行方法として、JavaScriptに変換してWebブラウザ上で実行する方法と、専用の仮想マシンを搭載したWebブラウザで実行する方法が予定されています。グーグルはChromeにDartの仮想マシンを搭載する計画を検討中であることを明らかにしています。
Dartの設計方針は次のように説明されています。
- Create a structured yet flexible language for web programming.
Webプログラミングのための、構造的だが柔軟性のある言語を作る - Make Dart feel familiar and natural to programmers and thus easy to learn.
Dartを、プログラマにとって親しみのある自然で、学びやすいものとする - Ensure that Dart delivers high performance on all modern web browsers and environments ranging from small handheld devices to server-side execution.
すべてのモダンブラウザ、小さなハンドヘルドデバイスからサーバサイドでの実行までを含む環境で高性能を実現する
Dartの専用Webサイトが開設されており、そこでドキュメント類が参照できるほか、サンドボックスでDartのプログラミングと実行を試すことができます。
グーグルから流出したメモは本物だった?
先日、「JavaScriptは単なる言語の進化では修正できない根本的な問題を抱えている」というメモがグーグルから流出したと話題になりました。
参考:グーグルから「JavaScriptは根本的な問題を抱えている」とのメモがリークか
そのメモによると、JavaScript以外の選択肢として「Dash」と呼ばれる新しい言語の開発がグーグル社内で検討されていました。Dashは「JavaScriptの動的性質を保ったまま、よりよいパフォーマンスと大規模プロジェクトのツールとして適応するものを目指す」ものだと説明されており、今回発表されたDartと同じコンセプトです。
しかしJavaScriptはWebブラウザで利用可能なだけでなく、マイクロソフトがWindowsアプリを開発するのにも採用し、Node.jsでサーバサイドでも利用可能になるなど、これまで存在したあらゆる言語の中で、もっとも広範囲で使われる言語となりました。DartがJavaScriptと肩を並べるようなWebプログラミング言語になれるかどうか、グーグルはかなり高いハードルに挑むことになります。
関連記事
2015年3月、GoogleはChromeへのDartVMの統合を断念。当初のDartの目標到達は事実上断念されました。
2018年3月、Dart 2とFlutterライブラリが発表されます。その後、Dart 2とFlutterは順調にバージョンアップを重ねていきます。
- Googleが「Dart 2」発表、Dartを再起動。iOS/Android用ライブラリ「Flutter」と共にWebとモバイルのクライアント開発にフォーカス
- Dart用UIツールキット「Flutter」がバージョン1.0に到達。iOS/Androidネイティブアプリを単一コードで開発。Flutter Live '18
- Googleが「Dart 2」安定版とAngularDart 5をリリース。Webとモバイルのクライアント開発にフォーカス
Flutterはマルチデバイス対応へと進化していき、2021年3月、Flutter 2が公開されました。
- Flutter、ベータを卒業してリリースプレビューへ。Dart言語によるiOS/Android対応アプリフレームワーク
- FlutterアプリをWindows/Mac/Linuxのデスクトップで実行可能にする「Flutter Desktop Embedding」発表。Flutter Live '18
- Google、「Flutter for Web」発表。FlutterからWebアプリを生成。Flutterはマルチプラットフォーム対応のフレームワークに。Google I/O 2019
- Google、「Flutter 1.9」リリース、Webアプリ生成機能を統合。Flutterは単一コードでネイティブアプリとWebアプリを開発できるフレームワークに
- Dart言語のフレームワーク「Flutter 2」公開。単一コードでiOS/Android/Web/Win/Mac/Linuxのネイティブアプリ実現。WebAssemblyによるレンダリングエンジン搭載
あわせて読みたい
[速報]「EPUB 3」がついに完成! IDPFが発表
≪前の記事
グーグル、「Google Cloud SQL」を発表。Google App EngineにMySQLをベースにしたリレーショナルDBを追加