こんにちは、KiYOです。
システムエンジニア歴20年オーバー。製造現場に特化したシステム開発を主にやってます。
新しい物好きで色々なIT技術を勉強しては、仕事に使って行ってます。

今回はDartについて紹介します。
Dartを知ったのはクロスプラットフォームの開発で有名なFlutterというフレームワークでした。
- Dartの特徴
- Dartの歴史
- Dartの利用シーン
今回はこの本を参考に、私の独断と偏見で記事を書いています。
言語を5点中評価
容易性 | 容易に言語習得できるか? | 4 |
将来性 | 将来性があるか? | 4 |
普及度 | 普及しているか? | 2 |
保守性 | 保守性が高いか? | 4 |
中毒性 | ハマるか? | 2 |
16 |

Dartの特徴

JavaScript対抗としては普及せず、Flutterのモバイルアプリ開発で一躍人気に!
- Dartはユーザインターフェース構築が得意なプログラミング言語
- JavaScriptへのトランスパイル(*)
- クロスプラットフォームで有名なフレームワークFlutterが人気
- JavaScriptの置き換えを狙っていたが、普及せず
- パフォーマンスと生産性を両立したクライアント(アプリやWebなど)向け言語
- 静的型付け、クラスベースのオブジェクト指向言語でJavaやC#を似た文法
- サーバ向けのDartも提供あり
*あるプログラミング言語から、他のプログラミング言語に変換する技術

Dartの歴史

開発者 | |
誕生 | 2011年にGoogleから公開 |
公式サイト | https://dart.dev/ |
分類 | 静的型付け、オブジェクト指向、トランスパイル |
影響を受けた言語 | JavaScript Java Erlang C# Haxe CoffeeScript |
影響を与えた言語 |
言語の歴史
2011年 | Googleから公開 |
2019年 | 前年比500%の利用数を獲得(GitHub調査) |
- 開発時はdartインタプリタ(仮想マシン)
- デプロイ(利用)時は、高速なdart2nativeによるコンパイル
- JavaScript用途ならトランスパイルという使い分けができる
- JavaScriptも開発用のdartdevcとデプロイ用のdart2jsの2つの手法あり
- Flutterはオープンソース、クロスプラットフォームのアプリ開発フレームワーク
- Android/iOSなどのスマートフォン向けアプリの開発が可能
- Googleが開発し、Dart言語を利用
- DartはJavaScriptの置き換えを狙っていた
- 2018年にリリースされた2.0以降ではクライアント重視(モバイルアプリとWeb向け開発)の姿勢に代わり、JavaScriptの置き換えという目標から転換
Dartは当初JavaScriptの代替え言語として注目を集めました。しかし、同じ目的で開発されたCoffeeScriptやTypeScriptといった言語との競合などもあり、それほど普及しませんでした。
2015年にChromeとの統合断念、2017年にはGoogleは社内でTypeScriptを社内の標準プログラムとして採用したため、Dartの存在意義は薄れたように思われた。
しかし、Flutterなどモバイルアプリ開発で存在感を増しており、Dartの開発は活発に進んでいます。
Dartの利用シーン

クロスプラットフォームのアプリケーションフレームワーク、FlutterによってAndroid /iOSやWindowsで高速に動くアプリが開発できます。
また、JavaScriptの置き換えを狙っていたためJavaScriptにトランスパイルとしてWebフロントエンド開発にも使えます。
Webアプリケーション開発も可能で、gRPC(APIサーバ)用のライブラリも公開されています。まだ普及の途上ですが、クライアント・サーバ双方に展開できます。
まとめ:モバイルアプリの開発はこれからDart(Flutter)

今回はDartについて解説しました。
2011年にGoogleが開発したまだ、若い言語Dart。 Flutterという強力なフレームワークもあり、これから目を離せない言語と思います。トヨタが車載システムにFlutterを採用したことは有名です。
ちなみに私のプロジェクトの1つでもDart+Flutterを使った開発を行なっています。
(成功しますように🙏)
- クロスプラットフォームで動くアプリの開発ができることで開発コストが抑えられる
- モバイルアプリやWebアプリ開発に特化して、高速に動く
- JavaScriptへのトランスパイルも可能
言語を覚えたとしてもそれを使うシーンが少なければ、意味がありません。
やりたいことを実現するために、Dartの使い方をマスタしましょう。
何事も覚えることに遅いことはありません。今日が一番若い日です。行動していきましょう!
以上です。KiYOでした!
今回参考にさせていただいた本はこちらです。今回紹介した言語やその他言語も紹介されているので大変勉強になりました。
まとめページで、他のプログラミングも紹介していますので、ご覧ください。

コメント