待望の Titanium Mobile 入門本が発売されたので、さっそく購入。

Titanium Mobile とは、スマートフォン ( Android/iPhone/iPad ) 向けアプリをクロス開発するためのツールである。
無料で始められる気軽さ、開発言語として広く普及している JavaScript を採用したことなどが評価されたのか、昨年あたりから急激に注目を集めている。
そんな感じで人気の Titanium Mobile だが、いざ開発しようとしても情報が少なく、また、いろいろとハマリどころも多い。そのため、網羅的な入門書を待っていた開発者も多かったことだろう。かくいう私もその一人である。
本書をひととおり読んでみたところ、そのような期待へは十分に応えられていると感じた。現在、唯一の Titanium Mobile 本ということを差し引いても、かなりおすすめである。
以下に各章ごとの感想を書く。
第 1 章 : Appcelerator Titanium Mobile について
Titanium Mobile の仕組みや現状についての解説。
以前に騒がれた Apple の規約に関するリスク ( ※ ) についても言及されており、本書が「このツールは現実的な選択肢になりえるか?」という視点を持って書かれていることが分かる。
いわゆる Section 3.3 問題。2011/06/14 現在の App Store Review Guidelines では改訂されている
第 2 章 : 開発環境導入とアプリケーションの第一歩
おそらく Windows の登場する唯一の章である。
本書では iPhone/Android を両方サポートする関係上、環境は Mac OS X を想定しているようだ。ただし Android 開発なら Windows も利用できるので、そちらの環境構築についても説明されている。
ツールの使い方や実装は Win/Mac でほぼ共通なので、下手に両環境をとりあげて長くなるより、思い切った方がよいと判断したのだろう。
なお、本書で使用するツールは Titanium Developer になる。Titanium Studio を利用している場合は、違いを考慮して読む必要がある。
第 3 章 : 実践!Twitter クライアントアプリ開発
簡単な Twitter クライアントを作成しながら、Titanium Mobile 開発を学んでゆく。
GUI、イベント処理、ログ取りといった基本から、Titanium Mobile 独自のデータ管理、iPhone/Android 分岐といった応用まで、かなり手広く触れている。
章の終わりには AppStore と Android Market への公開も取り上げており、本章だけでスマホ開発をひととおり体験できるようになっている。
第 4 章 : ライブラリやデバイスの活用
前章で作成したアプリへ機能追加しながら、ライブラリやデバイスの利用方法を身につける。
OAuth やカメラの解説は、他のアプリでも役立つことだろう。個人的には require によるソース分割と設定画面のつくりかたが参考になった。
第 5 章 : GPS 活用アプリケーション「食べナビ」
この章では新たに、食べログ API を利用した別アプリを作成する。
スマホの代表的な機能である GPS とマップの使い方を学べる。飲食店の検索サービスは地理が重要なので、題材としてぴったりだと思う。
また、ここで初めてデータベース操作が登場する。SQL についての解説は最小限だが、CRUD をひととおり使用しているため、サンプルとしては必要十分。
開発に JavaScript を使用するので、もしかして JSON からクエリ生成するのか!?と期待していたのだが、手続き型の API に SQL 文字列を指定する一般的な形式だった。安堵しつつも、少々、残念。
第 6 章 : Titanium Mobile API 簡易リファレンス
本書の著者である @donayama 氏は、titanium-mobile-doc-jaというプロジェクトの管理人でもある。これはいま読める日本語の Titanium Mobile 資料のなかでは最も詳細、かつ網羅的なものである。
本章はこのプロジェクトと、Appcelerator 本家の API リファレンスを日本語訳して組み合わせたような構成になっている。
Web と同じ量を紙面でカバーするのは無理があるので、API 全体から見たら一部となっている。しかしアプリを作り始めるには十分な量である。
入門書は一読すると滅多に読み返さないのものだが、この資料の存在により、本書は何度も参照することになりそうだ。本家リファレンスや KitchenSink のソースを読む前に、API の雰囲気や方針へ慣れるための副読本としてもよい感じ。
Appendix
興味ぶかい内容の多い付録。
ただし自動レイアウトは 2 章あたりで説明してもよかったと思う。GUI を持つアプリの場合、レイアウトやイベント処理はフレームワークの癖が出る部分であり、慣れるのが大変な部分だから、それだけで章を作ってもよいと思う。
とはいえ、そういう作りにしたら読者が減ってしまいそうだが…。
また、モジュール機能はもう少しページ数がほしい。もし将来、Effective Titanium Mobile 的な本を出す予定があるならば、ここを突っ込んでくれることに期待する。例えば GUI コンポーネントの利用など。