Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Dart 参戦!!静的型付き言語界の隠れた実力者
Search
Kuno Ayana
August 02, 2025
Programming
290
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dart 参戦!!静的型付き言語界の隠れた実力者
https://flutterkaigi.connpass.com/event/362550/
Kuno Ayana
August 02, 2025
More Decks by Kuno Ayana
See All by Kuno Ayana
アクセシビリティ、まだ完璧じゃないけど ── “今から”できること
kno3a87
2
1.3k
ぬるぬる動かせ! Riveでアニメーション実装🐾
kno3a87
1
2k
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
3
840
iOS 18 がやってきた!
kno3a87
1
270
おうちハッカソン #2
kno3a87
0
160
ミクアカ成果報告会
kno3a87
0
72
SXSW2021
kno3a87
0
78
ミクアカ中間発表会
kno3a87
0
58
大学院進学ガイダンス
kno3a87
0
110
Other Decks in Programming
See All in Programming
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
190
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
170
Contextとはなにか
chiroruxx
1
370
Claspは野良GASの夢をみるか
takter00
0
210
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
12
6.1k
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
210
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.7k
AI 輔助遺留系統現代化的經驗分享
jame2408
1
970
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
200
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
920
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
580
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
920
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
The SEO Collaboration Effect
kristinabergwall1
1
490
Fireside Chat
paigeccino
42
4k
Test your architecture with Archunit
thirion
1
2.3k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
250
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
490
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
280
Agile that works and the tools we love
rasmusluckow
331
22k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
240
The Cult of Friendly URLs
andyhume
79
6.9k
Transcript
None
Dart 使ったことある人
Flutter 以外の目的で Dart を使ったことある人
Dart って Flutter のため だけにある言語でしょ? 🤔
Dart って Flutter のため だけにある言語でしょ? 🤔 そんなことない!
Dart は Flutter 以外にも使われてる! • CLI ツールやサーバーサイドにも利用可能 ◦ Dart 公式ドキュメントでも紹介されている
◦ shelf: Dart 公式が出してる サーバーアプリケーション用のフレームワークも • Wasm サポートも ◦ こちらもDart 公式ドキュメントで紹介
そんな Dart をご紹介💖
そもそも Dart って なんで生まれたの? 🤔
Dart の誕生 • 2011年に Google が JavaScript の限界を感じて作った新言語 ◦ Google
はより構造化された Web 開発のため に Dart を設計 • Dart はそのままブラウザで動く言語として設計された ◦ Dartium(Dart VM を内蔵した Chromium)を公開 ◦ dart2js により JavaScript への変換もサポート https://www.informationweek.com/it-leadership/google-aims-dart-to-kill-javascript https://www.wired.com/2011/10/google-throws-new-dart-programming-language-at-the-web
Dart の誕生 • 2011年に Google が JavaScript の限界を感じて作った新言語 ◦ Google
はより構造化された Web 開発のため に Dart を設計 • Dart はそのままブラウザで動く言語として設計された ◦ Dartium(Dart VM を内蔵した Chromium)を公開 ◦ dart2js により JavaScript への変換もサポート https://www.informationweek.com/it-leadership/google-aims-dart-to-kill-javascript https://www.wired.com/2011/10/google-throws-new-dart-programming-language-at-the-web すべてのブラウザで Dart を動かせるよう配慮 ✨
Dart の誕生 • 2011年に Google が JavaScript の限界を感じて作った新言語 ◦ Google
はより構造化された Web 開発のため に Dart を設計 • Dart はそのままブラウザで動く言語として設計された ◦ Dartium(Dart VM を内蔵した Chromium)を公開 ◦ dart2js により JavaScript への変換もサポート https://www.informationweek.com/it-leadership/google-aims-dart-to-kill-javascript https://www.wired.com/2011/10/google-throws-new-dart-programming-language-at-the-web すべてのブラウザで Dart を動かせるよう配慮 ✨ 失敗
Dartium の孤立と Dart への期待薄 • Apple / Microsoft など他のブラウザベンダーが Dart
VM の組み込みを拒否 ◦ Google だけがサポートすることで「分断されたWeb」が懸念された • W3C などの標準化団体も Dart を採用せず 結果… Dartium は 2017年に廃止 http://xahlee.info/comp/CoffeeScript_Dart_Javascript.html
Dartium の孤立と Dart への期待薄 • Apple / Microsoft など他のブラウザベンダーが Dart
VM の組み込みを拒否 ◦ Google だけがサポートすることで「分断されたWeb」が懸念された • W3C などの標準化団体も Dart を採用せず 結果… Dartium は 2017年に廃止 http://xahlee.info/comp/CoffeeScript_Dart_Javascript.html JS の代替になれず … その後しばらく Dart は低迷期間へ …
2018年2月
https://news.elearninginside.com/worst-coding-languages-learn-2018
https://www.codementor.io/blog/worst-languages-to-learn-3phycr98zk ワースト1位😭
もう Dart は終わりなのか …?
しかし
同 2018年2月
None
Dart2 登場の アナウンス
None
『Web とモバイルのクライアントサイドに 独自に最適化された言語である』 という Dart のビジョン達成に向けた 言語の再起動
2018年8月
None
Dart2 リリース🎉
そして
2018年12月
None
Flutter1.0 登場🎉
Dart 復活
Flutter の登場で Dart 復活! • 2018年 Flutter 1.0 登場🎉 •
Flutter とは? ◦ オープンソースの UI フレームワーク ◦ モバイル・Web・デスクトップなど マルチプラットフォーム向けアプリケーションを開発可能 Dart が採用された理由 • 直接的に UI をコードで表現 できるように • Hot Reload 機能を備えている(AOT / JIT コンパイル) http://xahlee.info/comp/CoffeeScript_Dart_Javascript.html
UI を Dart で記述 レンダリングエンジンで 直接描画
UI を Dart で記述 レンダリングエンジンで 直接描画 Dart で書いた Widget が
そのまま表示される
Flutter 開発での Dart の恩恵 • Dart で書いた Widget がそのまま表示される ◦
設計と表示がズレにくい • UI 構造そのものに型がある ◦ Text(title)で title が String? だったらエラー ▪ 開発中にバグを未然に防げる!
Dart はこれからも進化し続ける 2021年 : Dart 2.12 で null safety に
2023年 : Dart 3.0 で 100% null safety に records や sealed class などで型の表現力が飛躍的に向上 2024年:Wasm サポート開始・CLI や package の改善 2025年 : Dart 3.7 で 新 formatter の導入・wildcard 変数が利用可能に linter も強化されルールの統一性が向上 2025年 : Dart 3.8 で Null-aware collection 要素の追加・Linux クロスコンパイル ・formatter のスタイル選択オプションも実装されチームでより使いやすく
Dart はこれからも進化し続ける 2021年 : Dart2.12 で null safety に 2023年
: Dart3.0 で 100% null safety に records や sealed class などで型の表現力が飛躍的に向上 2024年:Wasm サポート開始・CLI や package の改善 2025年 : Dart3.7 で 新 formatter の導入・wildcard 変数が利用可能に linter も強化されルールの統一性が向上 2025年 : Dart3.8 で Null-aware collection 要素の追加・Linux クロスコンパイル ・formatter のスタイル選択オプションも実装されチームでより使いやすく 型もツールもプラットフォームも 進化が止まらない! 🔥
ちなみに
https://www.codementor.io/blog/worst-languages-2019-6mvbfg3w9x
https://www.codementor.io/blog/worst-languages-2019-6mvbfg3w9x ワースト1位を脱却
まとめ
たしかに Flutter 目的で 使われがちな Dart
一時はワースト 1位でした
が
進化し続けてる!
いつかベスト 1位になるぞ!
ありがとうございました! @kuno @Kunodayo_oboete