Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Dart in なごやまつり

Dart in なごやまつり

2013/08/25 なごやまつり https://connpass.com/event/2414/

Tomochika Hara

August 25, 2013
Tweet

More Decks by Tomochika Hara

Other Decks in Technology

Transcript

  1. Dartの型システム @zetta1985 原 知愛 Dart / Java / JS /

    DDD / REST Google信者 #SugoiH_c0hama #nagoya.dart 2013/08/25 なごやまつり
  2. Development Tools Dart Editor Dartium (Browser) Dart SDK Dart VM

    dart2js dart analyzer dartdoc Pub (Package Manager) Eclipse Plugin IntellJ IDEA Plugin
  3. Language Spec 基本はゆるふわなJava • 言語設計者はGilad Bracha氏 ◦ Java言語仕様 ◦ JavaVM仕様

    ◦ Pluggable (Optional) Type System提唱 • 他、Jochua J. Bloch氏(Effective Javaの人)も
  4. Language Spec • Optional Parameter • Named Parameter • Method

    Cascading • Const Variable • Generics • Named Constructor • Factory Constructor • Library Private • Implicit Interface • Mix-in
  5. Future: File IO new File("./foo.txt").fullPath() .then((fullpath) { print("foo.txt's fullpath is

    $fullpath"); }) .catchError((e) { print("foo.txt is not exists."); });
  6. Stream: Standard Input print("Please Input A."); var lines = stdin

    .transform(new StringDecoder()) .transform(new LineSplitter()); lines.listen((str){ print("Your input's length : ${str.length}"); print(str == "A" ? "Just A." : "Not A."); });
  7. Stream: File Read Stream<List<int> stream = new File('bar.txt').openRead(); StreamSubscription<List<int>> subscription;

    subscription = stream.listen((bytes) { for (var b in bytes) { print(new String.fromCharCode(b)); if (b == '#'.codeUnitAt(0)) { subscription.cancel(); return; } } });