Titanium Studio 以外で Titanium 開発

Titanium Mobile でアプリ開発を行うとき、最も一般的な手段は Titanium Studio を使うことです。公式に提供されているものなので導入も楽。でも Titanium Studio 、 Eclipse ベースなので重いです。マシンスペックが上がっても、重いものは重い。なので、これに頼らないで Titanium Mobile アプリ開発を行う手段を紹介します。

環境は OS X Lion 以降を想定。必要なミドルウェアは Homebrew で。

テキストエディタ

Titanium Studio は統合開発環境なので、エディタからデバッガまで揃っています。でも、ちょっとした修正を行うためにいちいち重いソフトを開くのは嫌です。なので他のエディタを使います。コード補完が欲しければ VimEmacsSublime Text 2 を使うと良いと思います。私は Sublime Text 2 使ってます。

ちなみに、Sublime Text 2 を使った Titanium なコード補完は JavaScript で書かないと動きません。 CoffeeScript では動かないので要注意。

プロジェクトの作成

node.js ベースの titanium_cli を使います。 npm 経由でインストールできるので、

で OK です。インストールされたディレクトリにあるテンプレートをいじれば、予め必要なセッティングが完了した状態のプロジェクトを作れます。私は下で紹介する MakeTi 関係のファイルをテンプレートに仕込んでいます。

ビルド環境

Shell Script で書かれた MakeTi を使います。プロジェクトのディレクトリにダウンロードしてきた MakeTi の bin ディレクトリと Makefile を設置するだけで、コマンドラインからシミュレータ用のビルドや実機転送まで行えます。

いちいちプロジェクトを作るたびに MakeTi のファイルを設置するのは面倒なので、 titanium_cli のテンプレートディレクトリに設置し、自動的に MakeTi を使えるようにしています。ちなみに、 MakeTi は Sublime Text 2 用のプラグインが同梱されているので、エディタから直接 MakeTi を呼び出すことも可能です。

ただ、 Sublime Text 2 から MakeTi を直接呼び出すと Ti.API.info とか console.log が動かないので、必要に応じてコンソールから呼び出した方が良いでしょう。

CoffeeScript + Jitter

最近 Titanium な JS を書くときは専ら CoffeeScript を使っています。いちいちコンパイルするのが面倒くさいので、コンパイルは Jitter に任せています。プロジェクトのディレクトリに coffee ディレクトリを作り、 CS ファイルを保存するたびに Resources ディレクトリに JS をはき出しています。

-b は JS をはき出す際にコード全体を即時関数でくくらないためのオプションです。いつも必要なときには do -> を書くからいりません。

CoffeeScript から JavaScript への変換を意識しなくても MakeTi を使って実行できるのが楽です。エラーが出たら JavaScript のコードを見ないといかないので、そのあたりはコードを行ったり来たりするのが手間かもしれませんが。

最後に

でもやっぱり Titanium Studio は楽です。 ACS との連携も楽ですし、モジュールプロジェクト作りたければ Studio いります。全てを Studio から置き換えられるわけではないので、目的に合わせてツールはご利用ください。