Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Dart 参戦!!静的型付き言語界の隠れた実力者
Search
Kuno Ayana
August 02, 2025
Programming
340
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
Transcript
47 slides
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
More Decks by Kuno Ayana
See All by Kuno Ayana
アクセシビリティ、まだ完璧じゃないけど ── “今から”できること
kno3a87
2
1.6k
ぬるぬる動かせ! Riveでアニメーション実装🐾
kno3a87
1
2.6k
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
3
870
iOS 18 がやってきた!
kno3a87
1
300
おうちハッカソン #2
kno3a87
0
180
ミクアカ成果報告会
kno3a87
0
89
SXSW2021
kno3a87
0
94
ミクアカ中間発表会
kno3a87
0
76
大学院進学ガイダンス
kno3a87
0
130
Other Decks in Programming
See All in Programming
Snowflake Openflow Connector利用の勘所 / 20261024developersio2026tokyo-snowflake-openflow
kasacchiful
PRO
0
340
小さなアプリを作って公開するまで
onozaty
0
170
Vapor Mode でアクセシビリティは 壊れないか検証した話
fuqda
1
340
AIが実装を担う時代の「技術設計」と「チームマネジメント」
kamina_zzz
2
260
LLM 101: Exploring LLMs, Starting with Tokens.
dalinaum
0
110
Spec-Driven Development - Why Vaadin Is the Perfect Fit
simas
PRO
0
250
ビジネスロジックを堅牢に~Scala 3のドメインプリミティブ~
j5ik2o
0
150
Getting Started with Vibe Coding
miccheng
0
220
PyConTW 2026 - AI Coding 不只是工具升級, 區域醫院醫療資訊系統協作開發與資訊團隊轉型實踐
cclai999
0
250
Kawaiicon: Kubernetes, it's no longer cool, but let's secure it anyway!
barnbarn
0
130
社内AIエージェント「Askワンバン」における コストチューニングの取り組み
t0yohei
0
170
止まらない比較を止める — 余帰納法で無限ストリームを比べる
tarao
0
120
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
330
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
The SEO identity crisis: Don't let AI make you average
varn
0
630
Discover your Explorer Soul
emna__ayadi
2
1.3k
The Curious Case for Waylosing
cassininazir
1
610
Marketing to machines
jonoalderson
1
6k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
2
520
Are puppies a ranking factor?
jonoalderson
2
4.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
エンジニアに許された特別な時間の終わり
watany
109
250k