際際滷

際際滷Share a Scribd company logo
禽温姻岳をはじめよう
ながぬまたつみ
Dart
A new platform for structured web
apps
オ`プンソ`スで_k嶄の仟冱Z
Googleが麼悶
Dart
A new platform for

structured web apps
夛晒ウェブ アプリケ`ション
F壓のWeb
JavaScriptは殆這らしい
¢ プロトタイプベ`ス オブジェクト峺鬚
  よる來
¢ v方冱Zとしての蒙來
¢ N源なライブラリ
F壓のWeb....だけど
JavaScriptのこんなところが裏虫
¢ 侏がない
 $ v方の哈方、り、蛍かりづらい
¢ プロトタイプベ`スは蒙歩
  $ 啜弔垢て委燐しきれない
¢ スコ`プがわかりづらいθい
  $ 麿の冱Zと`う何蛍が謹い
  $ ライブラリの碧Mみがない
Web_kに夛晒を
JavaScriptは寄きめの_kに鬚ない
¢ K佩_kがyしい
 $ インタ`フェイスを協xしづらい
¢ ライブラリxびがyしい
  $ 詞ぜて聞っても寄嬋健か



★ 盾Qしたい
侏
¢ Mみzみ侏
  $ int、double、String、List、Map...
  $ var
¢ ジェネリクス
  $ List < int >
  $ Map < int , String >
チェック モ`ド
¢ 侏はオプショナル
  $ チェック モ`ド  侏チェックあり
  $ プロダクション モ`ド  侏チェックなし

int foo = "Hello";
Failed type check: type String is not assignable
to type int


                     http://try.dartlang.org/s/kRU9
クラスベ`ス
¢ クラスベ`ス オブジェクト峺鰕壞Z
 $ JavaScript より Java に除い

interface Animal {}
class Dog implements Animal {}




               http://try.dartlang.org/s/eF08
ライブラリC
¢ #library (ライブラリ兆)
¢ #import (ライブラリ兆 prefix: 俊^徨)
¢ ライブラリ プライベ`ト
  $ _で兵まる篳やv方、クラスなど

#import ('dart:io', prefix:'io')
new io.File('memo.txt');
淵薀ぅ屮薀
¢   dart:core
¢   dart:isolate
¢   dom
¢   html
¢   io
¢   json
¢   uri
¢   utf
もっと宴旋に ?

v方
int compare(a,b){return a - b;}
col.sort(compare);

col.sort((a,b) { return a - b; });

col.sort((a,b) => a - b);



               http://try.dartlang.org/s/wtQ9
もっと宴旋に ?

クロ`ジャ
counter(c) { return () => c++; }

var c1 = counter(1);
var c2 = counter(3);
for (int i = 0; i < 3; i++) {
  print(c1()); print(c2());
}


               http://try.dartlang.org/s/E208
もっと宴旋に ?

猟忖双温頼
¢ ${塀} で猟忖双を温頼

String title = 'Test';
String s = '''
<h1>$title</h1>
<p>123 + 456 = ${123+456}</p>
<p>random = ${Math.random()}</p>
''';
               http://try.dartlang.org/s/0cQ9
もっと宴旋に ?

リストΕ泪奪
var list = [ 1, 2, 3 ];
var map = {
   'hello': 'world',
   'twice': (e) => e * 2
};
print("${list[0]}");
print("${map['hello']}");
print("${map['twice'](3)}");

               http://try.dartlang.org/s/fq88
もっと宴旋に ?

處麻徨オ`バ`ロ`ド
class Point {
  Point(this.x, this.y);
  final x, y;
  operator + (Point p) =>
    new Point(x + p.x, y + p.y);
}
var p = new Point(1, 2)
      + new Point(3, 4);

               http://try.dartlang.org/s/w9Q9
+1
こんなにすばらしい Dart ですが
まだ_k嶄...
猟隈は_協していません。
_kh廠は頼撹していません。
g佩h廠は頼撹していません。
2012/4/28 F壓
まだ_k嶄...
猟隈は_協していません。v0.8
_kh廠は頼撹していません。
g佩h廠は頼撹していません。
2012/4/28 F壓

でも、書すぐせます。
Dartboard
http://try.dartlang.org/
Dartium
Chromium with the Dart VM
frogc
¢ Dart to JavaScript コンパイラ
¢ Dartium參翌のブラウザでg佩
¢ Dartでg廾されている

$ frogc test.dart
$ ls
test.dart test.dart.js
Dart Editor
Dart Editor - 仟号アプリ
Dart Editor - 温頼
Dart Editor - デバッグ
Dart Editor
¢ Eclipseベ`ス
¢ 仟号アプリ ウィザ`ド
  $ Webアプリ、サ`バ
¢ JavaScriptへのQg佩
¢ デバッガ
  $ WebアプリDartiumのみ
Dart & JavaScript
¢ DartはJavaScriptを崔きQえない
  $ 慌贋辛嬬
  $ m可m侭
¢ JavaScriptはゴ
  $ でもxk岔があってもいい
¢ 繁殄N嶄
 $   Dart is the #72 most popular
     language on GitHub
 $   JavaScript is the most popular language on GitHub
Dartのこれから
¢ Dart云悶
  $ 冱Z碧、互堀晒
¢ ライブラリ
  $ g悶テスト、パッケ`ジ システム
¢ サ`バ` サイド
  $ dart:io、フレ`ムワ`ク
¢ モバイル
  $ Android
やってみよう
まだしていないことも
たくさんあります。

とにかくやってみよう。
ありがとうございました
Y創
¢ http://www.dartlang.org/
¢ 晩ULinux 2012定2埖催、3埖催
  Dart並 ... SSS(G) 弌表さん鵡P
¢ What is Dart? O'Reilly $0

More Related Content

禽温姻岳をはじめよう