[Dart] dartでWebアプリっぽいものを試作している話。 #dartlangjp

■ channelAPI + Dart + dart2jsを試している

プロジェクト
https://github.com/mogeta/dotsync
アプリ
http://muzigen.appspot.com/

こんなかんじのドット絵もどきの工程をを他ユーザーとsyncするアプリをテスト中です。 gaeのchannelAPIを使ってjsonのデータを渡しています。

■ dart2.jsの使い方

Dart Editorから入力する方法

出力したいdartファイルを指定し、tool->Generate Javascriptでおk。 [mac](shift+command+G) スクリーンショット 13 05 20 17 27

コマンドラインツールから

http://www.dartlang.org/docs/dart-up-and-running/contents/ch04-tools-dart2js.html
Basic Usageにあるように
$DART_SDK/bin/dart2js --out=test.js test.dart
てな具合で使えます。

■ dart2jsはとりあえず楽(小並感

dart2jsで変換できるよ!という話「だけ」を聞いた際は、
「とは言え、全部のファイルを変換して、同じ場所に配置して、HTMLの読み込みも変換して gruntあたりでそういうビルドやるとはいえめんどくないですかねぇ。」
とか思ってたんですが、変換して出来る「hogehoge.dart.js」
を同じディレクトリに配置するだけというカンタン作業でした。

ライブラリの依存や複数ファイルにまたいだdartアプリであろうと、1ファイルにまとめてくれる上
  • dart.jsがdartに対応しているかをチェック
  • してない場合はhogehoge.dart.jsを読みに行く
と言った動作をしてくれる為、htmlファイルの変更は一切必要ありません。つまり、
dartアプリを記述するだけで、余計な作業無しにモダンなブラウザに対応したアプリが記述できる。
というのが、強みの一つではないかと思います。
とは言え、dartだからの強みかというとそこまででもなくて、他言語でも同程度に便利な機能、ツールはあるのでどっこいどっこいですね。

■ Debugging

上記のページの焼き増しですが、Chromeの場合
Chrome dev toolを開いて、右下の歯車をクリック。 スクリーンショット 13 05 20 17 36 2 Enable source mapsにチェック。 スクリーンショット 13 05 20 17 39
後は適当な場所にブレークポイントをかけてみましょう。

このブログの人気の投稿

[Unity]「落ちたら消えるオブジェクト」の作り方

GoとDockerのお勉強 #golang #docker

Firebase と Androidで認証、ストレージ、データベース #firebase