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
Tomochika Hara
July 27, 2013
Technology
0
68
Dartの基本
2013 Dartの基本
https://connpass.com/event/2689/
Tomochika Hara
July 27, 2013
Tweet
Share
More Decks by Tomochika Hara
See All by Tomochika Hara
Swiftでつくるファミコンエミュレータのススメ
thara
3
2.2k
モバイルゲーム開発と Google App Engine
thara
0
360
GCPとAWSの比較
thara
0
130
Dart VM と Optional Typing
thara
0
380
Dart in なごやまつり
thara
0
56
Dart言語仕様 Pick-up
thara
0
580
Future & Stream in Dart
thara
0
470
Other Decks in Technology
See All in Technology
多様な事業ドメインのクリエイターへ 価値を届けるための営みについて
massyuu
1
290
ACA でMAGI システムを社内で展開しようとした話
mappie_kochi
1
270
JAZUG 15周年記念 × JAT「AI Agent開発者必見:"今"のOracle技術で拡張するAzure × OCIの共存アーキテクチャ」
shisyu_gaku
0
110
Escaping_the_Kraken_-_October_2025.pdf
mdalmijn
0
140
From Prompt to Product @ How to Web 2025, Bucharest, Romania
janwerner
0
120
「Verify with Wallet API」を アプリに導入するために
hinakko
1
240
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
220
Where will it converge?
ibknadedeji
0
180
E2Eテスト設計_自動化のリアル___Playwrightでの実践とMCPの試み__AIによるテスト観点作成_.pdf
findy_eventslides
1
370
20250929_QaaS_vol20
mura_shin
0
110
pprof vs runtime/trace (FlightRecorder)
task4233
0
170
社内お問い合わせBotの仕組みと学び
nish01
0
400
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
5
190
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Gamification - CAS2011
davidbonilla
81
5.5k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Fireside Chat
paigeccino
40
3.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Transcript
Dartの基本 tomochikahara @zetta1985
About me • Java / JavaScript • Google App
Engine / Java, Python • Restful API : JAX-RS • Single Page Application • 関数型言語とかDDDとか勉強中 • Community ◦ DDD名古屋, 名古屋Scala, Functional忍者, etc... 原知愛@zetta1985
Agenda • Dartへの誤解 • DartのEcosystem • Dartの可能性
Dartへの誤解
Google最強言語 Dart • Dartの言語仕様が古臭い → 親しみやすさを重視。使ってもらえる事が再重要 → 言語を進化させやすいSource Code VM
• altJSなら他の言語の方が優れている → ただのaltJSではありません。コアライブラリも豊富 → Web用LL + 型システム with JavaScript生成器付き → Client / Server 双方で使ってこそ • 他のブラウザがDartを組み込むことはない → dart2jsによるaltJS的な用途でも何も問題はない → そもそもWebアプリには、Webサイトほど 他ブラウザ対応をする必要性はないのでは
DartのEcoSystem
Dart Runtime Dart Code Dart VM Snapshot dart2js JavaScript
Tools Dart Editor Dartium DartSDK Dart VM dart2js dartanalyzer dartdoc
Pub (Package Manager)
All for Web development • dart2js + Dart VM in
server-side → Anywhere on the Web • Source Code VM + LL + Dartium → Rapid Development Cycle • LL + dartanalyzer → Dynamic + Static Type System
Dartの可能性
言語の進化 • DartEditor ◦ issue送信機能 ◦ 変化を受け入れる仕組み ▪ バージョン間の差分自動修正機能 ▪
automatic-dartanalyzorの無効化
言語の進化 • Optional Typing ◦ 言語仕様と型システムの分離 ◦ 後方互換性は言語仕様のみでOK ▪ 実行時に型は振る舞いに影響を与えない
◦ Pluggable Type Systemへ? ▪ お前が欲しい型システムはお前で書け
対象Platformの拡大 • Chrome ◦ いずれはDart VMを載せる、はず・・・ ◦ GoogleサービスをDartでリプレイスして優れたUXを提 供出来れば強力なメッセージに ◦
Chrome Packaged Apps開発に有利に ▪ Webブラウザとしてではなく、 プラットフォームとして
対象Platformの拡大 • 他ブラウザ ◦ 標準化を"本当は"どこまで目指しているのか? ◦ altJS的な扱いでも十分なのでは ▪ 開発時やServer-sideにDart VMを使用
▪ 専用VMがある時点でaltJSの枠を超えている ▪ ぶっちゃけ、どうでもいい?
対象Platformの拡大 • Android ◦ Dalvik VMからDart VMへ? ◦ GoogleのJava離れ ▪
GUIプログラミングとJavaとの親和性は高くない ▪ Oracleさんとの仲が・・・ ◦ java2dartの存在
まとめ • みんなが考えるほど、用途は限定されない • JavaScriptは過去にブラウザベンダーが Developerに押し付けたもの • 今、Web Developmentをみんなで一から作る 意味。
• GoogleがDeveloperに与えたチャンス