この記事では、このTitanium Mobileを紹介します。
以下のような特徴があります。
開発言語、サポートプラットフォーム
- JavaScirptでアプリケーションを記述する。Objective-C、Java を修得しなくても、ネイティブアプリケーションを開発できる。
- 複数のプラットフォーム(iOS、Android)をサポートしている。
- iOSについては、プラットフォームのほとんどの機能をサポートしている。Androidは若干発展途上中。(2011/08現在)
- 特に、ウェブサービスのフロントエンドに向いている。
- メモリ使用量、動作速度は、素のアプリケーションより若干劣る。リアルタイム性を求められるアプリには不向き。
- Titaniumがサポートしない機能を使いたい場合は、Objective-C、Javaで書いたモジュールで拡張可能。
- EclipseベースのIDEで、コード補完やデバッガ、実機へのインストールなどをひとつの環境で開発サイクルのひととおりをカバーしている。
はじめてみよう
開発元のAppcelerator社のサイトに "Getting Started"ページがありますので参考にしてみてください。(2011/08現在の内容を元にしています)-
iPhoneアプリの開発準備(※)
iPhone/iPad アプリの開発には、iOSのDeveloperプログラムに加入し(有償)、XcodeとiOS SDKをセットアップする必要があります。 -
Androidアプリの開発準備(※)
適合バージョンのJava2 SDK(JDK)、Android SDKのインストールおよびセットアップが必要です。 -
Titanium SDK / Titanium Studio
開発元のAppcelerator社から提供されています。無料で使用できるエディションも用意されています。サイトでユーザー登録を行うと、ダウンロードできます。
メニューから、File > New > Titanium Mobile Project を選択します。
新しく作成されたプロジェクトには、いくつかのファイルやディレクトリが含まれています。 これらは、Titaniumアプリケーションのひな形となっています。
すでにこの時点で、エミュレータ(iPhoneシミュレータ/Androidエミュレータ。以降エミュレータと表記します)を使ってアプリケーションを確認することができます。
以下のような、簡素なアプリケーションが確認できると思います。
Resourcesディレクトリの下に app.js というファイルがありますが、そこにアプリケーションのコードが記述されています。コメントを除くと、正味40行程のコードです。
非常に直感的なので読めば何を書いてあるかわかると思いますが、タブ切替えのウィンドウ2枚で画面が構成されており、それぞれにラベルが配置されています。
アプリケーションの構造
ボタンをひとつ追加してみます。 クリックすると、おなじみのアラートボックスでメッセージを表示するためのシンプルなボタンです。
var button1 = Titanium.UI.createButton({
title:'Push me!!',
width:160, height:20, top:220 });
button1.addEventListener('click', function(){
alert('Hello World!');
});
win1.add(button1);
結果は、以下のようになります。
コードは非常に簡単かつ直感的でUIを追加できます。また、文章ではわかりませんが、Titanium Studioのコード補完機能によりAPI呼出しなどもスムーズにコーディングできます。
簡単ですが、Titanium Mobileを紹介させて頂きました。 やはり一番の特徴は、JavaScriptで複数プラットフォームのネイティブアプリを記述できるところでしょうか。
ネイティブアプリの開発には、iOS(iPhone/iPad)では Objective-C、Androidでは Java といった言語を修得する必要があります。また、クオリティの高いアプリの開発には、それぞれのプラットフォームのデザインパターンを押さえる必要があるでしょうし、その上で機能やUX(User Experience)の実装という話しになるわけですから、習熟するにはそれなりの投資が必要になります。
Titanium Mobile向けに、「Kitchen Sink」というサンプルアプリケーションが公開されています。 これは、言わば『全部入り』のアプリケーションで、Titanium Mobile SDKで利用できるコンポーネントについて、ひと通り動作を確認することができる、というものです。
Kitchen Sink に含まれるサンプルのいくつか
慣れ親しんだJavaScriptでの開発、モバイルアプリケーション向けの各種部品とコードパターンにより、先の2つのステップの修得コストが下がります。このことにより、各プラットフォームに精通した熟練者でなくても、機能であったりUX(User Experience)といった、より本質的な部分への集中が、早い段階で可能になるのではないかと思います。
さて、付属のサンプルの紹介だけではもの足りませんので、Titanium Mobileを使って、簡単な Salesforce.com Chatter クライアントを作成してみました。次回は、これについて紹介させていただこうと思います。
















0 コメント:
コメントを投稿