昨日、IDCFクラウド上にxrdpで接続するGUI開発環境の準備ができたので、
Dart Editorをインストールして本格的にDartを勉強しようと思います。
そんな時、Windows Azure WebsitesとVisual Studio Online “Monaco”を使うと、
TypeScriptとNode.jsをすべてクラウド上で開発できるらしく、気になって仕方がないです。
PPAからインストール
DartのPPAリポジトリがあったので、apt-getしてみます。
$ sudo add-apt-repository ppa:hachre/dart |
zipをダウンロードしてもよいですが、なるべくパッケージマネージャを使いたいです。
Dart Editorの起動
Menu -> プログラミング -> Dart Editor
から起動します。ここにDartiumのアイコンも並んであります。
IDCFクラウド上のインスタンスにxrdpで接続するので、若干ひっかかりを感じますが、普通に開発できそうです。
Dartiumが起動しない
pop_pop_winのサンプルプロジェクトを実行しようとすると、libudev.so.0: cannot open shared object
となってDartiumが起動しません。
issuesを見るとworkaroundでシムリンクをはるようにあったので、従います。
$ sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0 |
そうるすとGoogle APIキーが欠如しています
と警告がでますが、Dartimuが起動するようになりました。
Chromeが起動しない
すると今度は、Dartiumと共存できないのか、Chromeが起動しなくなりました。
Chromeがプラットフォーム化してくると、純粋なブラウザに特化したモダンな軽量ブラウザが欲しくなります。
動きがあやしく、psをみたらdartのプロセスが複数あがっていました。
xrdで複数の端末から接続しているのですが、うまくセッションが閉じられていないようです。
Chromeの日本語入力がおかしかったのも、このためか、psで別プロセスがないことを確認すると、入力できるようになりました。
まとめ
DartVMを捨ててdart2jsだけにして、JavaScriptへコンパイルする言語としてみると、Dartは非常に魅力的です。
AngularDartなど触っていると、ああこれがモダンな静的型付け言語なのかと思います。GroovyやScalaの型推論は複雑すぎて、デバッグがつらすぎです。
Nitrous.IOのようにブラウザだけでプログラムとプレビューができる開発環境が気に入っているので、Visual Studio Online "Monaco"
にも期待してしまいます。
Nitrous.IOでもparts install dart
できるようで、こっちの方を先に、亜酸化窒素を買わないと。