Sencha Touch

Sencha Touchとは特にモバイルサイトの構築のために使われるユーザインタフェース(UI)JavaScript libraryおよびフレームワークである。が携帯端末に対応するのようなモバイルウェブアプリケーションのユーザインタフェースを開発するのに使われる。HTML5、CSS3、JavaScriptといったウェブ標準に完全に基づいている。Sencha Touchは開発者がAndroidやiOS、BlackBerryで動くHTML5ベースのモバイルアプリケーションを迅速かつ簡単に開発することやブラウザ内でネイティブアプリケーションのようなエクスペリエンスを作り出すことを目的としている。
バージョン史とサポート.
Sencha TouchはExt JS、jQTouch、Raphaëlで構成される後に人気を得たJavaScript libraryのSenchaの1製品だった。2010年7月17日にSencha Touchの初版であるバージョン0.90ベータが公開された。このベータ版はAndroid、iOS（iPhone、iPod touch、iPad）が動作する端末に対応した。その後、2010年11月に初の安定版であるバージョン1.0が公開された。バージョン1.1.0ではBlackBerry OSバージョン6が動作する端末に対応した。2012年3月7日に最新バージョンのSencha Touch 2が公開された。これはAndroid、Google Chrome for Android、RIM Blackberry Browser、Bada Mobile Browser、Kindle Fire Browser、SafariといったWebKit使用ブラウザで動作するように設計されている。SenchaはWindows Phoneのバージョン2.xシリーズに対応する意向を表明したが、Firefox Mobileに対応する計画は無い。
機能.
Sencha Touchにはモバイルアプリケーション内で使用されるグラフィカルユーザインタフェース型コントロール（もしくはコンポーネント）のセットが含まれている。これらのコンポーネントはタッチ入力に最適化されている。そのコンポーネントには端末固有のテーマとエフェクトがあるボタン、電子メール、日付ピッカー、アドレス帳向けのテキストフィールドなどのフォーム要素、スライダーやセレクターやコンボボックス、モメンタムスクロールとインデックスバーがあるリストコンポーネント、ミニマルアイコンセット、ツールバーとメニュー、移動可能なタブ、最下部ツールバー、ピンチやズームといったマルチタッチジェスチャー対応の地図コンポーネントがある。
全てのコンポーネントは目的の端末に合わせてテーマにすることができる。これはSassというCSS上で構築されたスタイルシート言語で使用され実行される。
Sencha Touchには現要素の上下スライド、ポップ、フリップ、キューブといった4つの内蔵トランジションエフェクトがあり、ウェブ標準だがAndroidやiOS、その他タッチジェスチャーが可能な端末にしか対応していないで構築された共通のタッチジェスチャーに対応している。
ネイティブアプリケーションとの比較.
携帯端末におけるネイティブアプリケーションはカメラ、コンパス、マイクロフォンといった端末の内蔵機器にアクセスできるが、Sencha TouchはPhoneGapといったネイティブシェルを使用してアクセスできる。モバイルブラウザや端末はモバイルウェブアプリケーションが使用できるようにAPIやWebSocket、GPS、加速度計といった新しい規格にフル対応する形で進化したようにSencha Touchも特別にGPSをサポートしている。Sencha TouchはPhoneGapや自身のネイティブパッケージャーを使って現在ネイティブのみアクセスできる内蔵機器を持つ携帯端末にネイティブ対応するアプリケーションを製作したり、アプリケーションのマーケットプレイスで公開することもできる。このようなアプリケーションの機能はPhoneGapの機能による制限されることがあるが、Sencha TouchはSencha Touch 2 Preview SDKにある自身のネイティブパッケージャーを使うことができる。