Ubuntu 14.04のDockerコンテナにEmacsでDartの開発ができるように準備していきます。
以前使ったEmacsの設定が基本になります。
Dockerコンテナの起動
前回Dart SDK
をインストールしたイメージを使います。
Webアプリ用に8080をポートフォワードします。
$ docker run -d -p 8080:8080 masato/dart-sdk:latest /sbin/my_init --enable-insecure-key |
Emacs24のインストール
コンテナのUbuntuのバージョンを確認します。
# cat /etc/lsb-release |
Emacsのインストール
# apt-get update |
dart-mode
dart-modeはMELPAからダウンロードするので、package-user-dirにリポジトリを追加します。
Marmaladeも一緒に追加しておきます。
;; package |
Emacsを起動し、M-x list-packages
をするとパッケージ一覧が表示されます。
リストが表示されたら、dart-modeを選択(i)して、実行(x)を押しインストールします。
また、削除したい場合は削除する場合は、選択(d)と実行(x)をします。
Dart 1.3.6
Dartのバージョンを確認します。
# which dart |
Rikulo StreamでHello Wold
Hello Woldを写経しながら、かんたんあWebアプリをRikulo Streamで書いてみます。Rikulo Stream
はシンプルなMVCフレームワークです。まずはプロジェクトの作成から。
# mkdir -p ~/dart_apps/hello-world/web/webapp |
pubspec.yamlを書きます。
name: helloworld |
pub getでパッケージをダウンロードします。
# pub get |
main.dartを書きます。
import "package:stream/stream.dart"; |
index.htmlを書きます。
|
作成したWebアプリのディレクトリ構造は以下になります。
hello-world/ |
multitermを起動して、dartプログラムを起動します。C-x 3
で、ウィンドウを分割、C-x o
で分割したウィンドウに移動します。M-x multi-term
でEmacs上にシェルを開きます。
# dart web/webapp/main.dart |
Dockerホストから確認
Dockerホストから確認します。
# curl localhost:8080 |
まとめ
Dartは始めたばかりなので、サーバーサイドのフレームワークが何がよいかいろいろと試してみようと思います。
開発環境に依存したくないので、なるべくDart Editorを使わずにエディタでプログラムが書ける環境が欲しいところです。
multi-termを使うとDockerコンテナの中でEmacsをIDEとして利用できます。
また、どうやらNitrous.IOでもDartが書けるらしいです。