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
57
大学院進学ガイダンス
kno3a87
0
110
Other Decks in Programming
See All in Programming
Oxlintのカスタムルールの現況
syumai
6
1.1k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
210
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
280
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
560
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
3.6k
CSC307 Lecture 17
javiergs
PRO
0
320
JavaDoc 再入門
nagise
0
320
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
240
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
130
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
450
Agentic UI
manfredsteyer
PRO
0
140
Vite+ Unified Toolchain for the Web
naokihaba
0
280
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.5k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
850
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
200
Rails Girls Zürich Keynote
gr2m
96
14k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
200
So, you think you're a good person
axbom
PRO
2
2.1k
4 Signs Your Business is Dying
shpigford
187
22k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.7k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
180
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