iPhoneアプリを作る10の方法

第2回関西アンカンファレンスでしゃべってきました。

.prezi-player { width: 550px; } .prezi-player-links { text-align: center; }

友達に頼む

  • 技術的詳細を知らなくても機能を実現することが出来る
  • 愛と勇気しかお友達のいない方には向かない
  • レベニューシェアという手もあるよ

プロに頼む

  • lancersオススメ。過去の履歴が残るので発注価格の参考になる
  • 普通に発注すると、バージョンアップのたびに開発費用がかかる点に注意

ObjectiveC

  • Appleが認める正式な開発言語
  • なんでもできるから、これで開発できる人はそうするのが一番
  • めんどくさすぎだろjk…

Flash

  • FlashCS5からiPhoneアプリを作ることができる
  • デザイナさんとかは、Flashから入れるのでわかりやすいかも
  • 一度Appleの規約改正でNGにされた。その後再改正されて、現在は通るらしい。
  • でも、正直いつまただめになるかと思うと不安で不安で・・・

HTML+CSS+JavaScript

jQTouch

  • iPhoneブラウザで見てもらう
  • 1ページに複数ページの内容を書くなど、ちょっと違うけどまだまだ普通のWEB開発の範疇
  • HTML+CSS+JavaScriptでできること(GPS,ローカルキャッシュなど)は当然できる
  • カメラとかファイルアクセスはできない
  • iPhoneぽいUIにすることができる
  • AppleStoreに登録することはできない

jQueryMobile

  • みんな大好きjQueryをつかって、iPhone/Android/SymbianなどのブラウザでUIを実現しよう
  • まだベータ版。今月あたりに正式リリース?
  • 理屈上は、JavaScriptすら動かない環境でも見られるサイトになるそうだけど、その割にjQueryをロードしないといけないとか、正直まだよくわからない
  • jQTouchに比べて、幅広い環境で動くらしい
  • JavaScriptなので、カメラとかファイルアクセス、AppStoreはNG。

SenchaTouch

  • iPhone/Android向けライブラリ
  • jQTouch以上にリッチなUIが実現できる
  • キャンバス描画ができるので、ソリティアみたいなゲームも登場している
  • HTMLとCSSもつかうけど、bodyタグ空っぽのところに、JavaScriptで部品を挿入していくプログラミングスタイル。デザイナさんには厳しいかも。
  • JavaScriptなので、カメラとかファイルアクセス、AppStore登録はできない

PhoneGap

  • WEBページをiPhoneアプリにしてくれる仕組み。WEBKitブラウザを使って表示する
  • カメラとかファイルアクセスのためのAPIも用意してくれる
  • UIはjQTouchと組み合わせるのが一般的だと思う
  • 当然、AppStore登録が可能

TitaniumMobile

  • mogyaイチオシ!
  • JavaScriptでプログラムを書くと、iPhoneとAndroidのプロジェクトに変換、ビルドしてアプリを作る
  • PhoneGapのようにWebKitでHTML,CSS,JavaScriptのページを使うことも可能
  • カメラやファイルアクセスのためのAPIも用意されていて使うことが可能
  • AppStore登録も可能
  • HTMLやCSSは出番が無くなって、完全にJavaScriptプログラミングの世界なので、デザイナさんとかは無理だと思う
    一応、PhoneGapみたいな使い方もできないことはない

あと、発表後のQAで、.NET FrameworkをつかってiPhoneアプリを作るMonoTouchというのもあるよ、と教えていただきました。
今軽く見た感じだと、TitaniumMobileよりもっとObjectiveCよりで、ObjectiveCの開発環境から言語がC#に置き換わった、という感じでしょうか。開発環境が有償なのが注意点になりそうですね。

(2011-01-15追記)動画が公開されました。