iPhoneアプリの開発にはずっと前から興味があるんだけど、Objective-Cを使うのがどうしてもイヤだった。そこで初めはJavaScriptで開発できるTitanium Mobileを試してみた。確かに使い勝手は良いんだけど、ハイブリッドアプリを作ろうと思うと、そう簡単ではなかった。それに微妙にバギーで仕事で使うにはちょっと厳しい印象を受けてしまった。

次はjQuery Mobile + PhoneGapを試してみた。これはもう完全にWebアプリ開発と同じなのでとても楽。欠点は、できたアプリがダサい、というか安いニセモノっぽくなってしまうところ。それでも用途によっては十分に使い物になると思った。業務系アプリはもうほとんどこれでいいな。

最近では、Rubyでちゃんとしたネイティブアプリを開発できるRubyMotionが自分にとって理想的ではないかと感じたので試してみようと思った。でも有償だったので一瞬冷静に考える時間を作れた。で、そこまでするなら素直にObjective-Cでよくね?と思い直して結局Objective-Cを使い始めてみたのであった。でも結論としてはやっぱり面倒くさかった。自分の仕事はプログラムをカチカチに作り込むというより、機能をシンプルに素早く実装することを求められることが多いので、やはり相性が悪く感じた。

今回Sencha Touchというのを見つけた(←イマココ)。これはjQuery Mobileと同じくHTML5+JavaScriptベースのWebアプリなフレームワークなのだが、画面をHTMLで実装するのではなく、JavaScriptのコードでガリガリ書く系のようだ。jQuery Mobileはモバイルサイトのフレームワークだが、Sencha Touchはモバイルアプリのフレームワークのような感じ。公式サイトのデモを見てもらえれば話は早いが、動作が非常に軽快。見た目のニセモノ感こそ少しはあるけど、ユーザーエクスペリエンスとしてはネイティブアプリとあまり遜色がない。これなら「ホーム画面に追加」前提のアプリを作ってもいいし、PhoneGapで固めても結構いい感じになりそうだ。

何か作ってみたら感想書くかもしれません。

Sencha