Titanium Mobileで開発するiPhone/Androidアプリ
待望の Titanium Mobile 入門本が発売されたのでさっそく購入。
Titanium Mobile とはモバイル向けアプリをクロス開発 (Android/iPhone/iPad) するためのツールである。無料で始められる気軽さと開発言語として広く普及している JavaScript を採用したことなどが評価されたのか、昨年あたりから急激に注目を集めている。
そんな感じで人気の Titanium Mobile だが開発しようとしても情報が少なく、いろいろとハマリどころも多い。そのため網羅的な入門書を待っていた開発者も多かったことだろう。かくいう私もその一人である。本書をひととおり読んでみたところ、そのような期待へは十分に応えられていると感じた。現在、唯一の Titanium Mobile 本ということを差し引いてもかなりおすすめである。
以下に各章ごとの感想を書く。
第 1 章 : Appcelerator Titanium Mobile について
Titanium Mobile の仕組みや現状についての解説。
以前に騒がれた Apple の規約に関するリスク (※) についても言及されており、本書が「このツールは現実的な選択肢になりえるか?」という視点を持って書かれていることが分かる。
- Apple の規約に関するリスクについて
- いわゆる Section 3.3 問題
- 2011/06/14 現在の App Store Review Guidelines では改訂されている
第 2 章 : 開発環境導入とアプリケーションの第一歩
おそらく Windows の登場する唯一の章である。
本書では iPhone/Android を両方サポートする関係上、環境は 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 コンポーネントの利用など。