MonoTouchでiPhoneアプリの.NET開発、評価版ならタダですよ

日本での MonoTouch への興味が高まっているみたいなので、ライセンス料についてのページを翻訳してみます。

翻訳

原文は、こちら http://monotouch.net/Store
MonoTouchはshopNovellからオンライン購入できます。購入後にダウンロードとインストール手順そしてアクティベーションコードがe-mailアドレスに送信されます。詳細はそのなかの手順に従ってください。
また別の手段として、iPhoneシミュレータでのみ開発とテストができる評価版をダウンロードすることができます。
注意すべきことは、MonoTouchでアプリケーションのテストおよびiPhoneで動作させ配布するには、MaciPhone SDK そして Apple's iPhone Developer Programへの登録が必要になります。

開発リソースとライセンス料のまとめ

開発状況毎に、必要なリソースとラインセスをまとめます。
MonoTouchの評価版と製品版の違いは、iPhone実機でアプリを動かせるか否か、つまりARMネイティブコードへのコンパイラ/デバッガの有無です。シミュレータでアプリを開発する限りは、MonoTouch評価版は製品版と何も違いはありません。つまり、普通のアプリケーション開発には必要十分なシミュレータでの開発環境には、(ハードウェアを除き)初期投資はいらないということです。
また、最初に評価版をインストールしたあとに、ラインセス購入をすることも容易です。評価版をインストールした後に製品版を購入すると、自動的にMonoTouchを製品版にアップデートするプログラムが入手できます。このプログラムは、ネイティブコンパイラなどの追加インストールなどを行います。

  • シミュレータで開発する
    • Mac (Mac mini なら 6万円)
    • Apple developer program (無料)
    • MonoTouch 評価版 (無料)
  • 実機で動作/テストする
    • Mac (Mac mini なら 6万円)
    • Apple developer program (1万円/年)
    • MonoTouch 製品版 (400米ドル。年間更新料は未定だが、現バージョンの開発はずっとできる。(期限切れでネイティブAOTコンパイラが動かなくなることは、ないみたい))
どんなMacを買えばいいの?

Snow leopard が動くIntelのプロセッサを搭載したMacならば問題なく使えます。私の開発環境は、2009年前半型 Mac mini (メモリ 2Gbyte、Intel Core2Duo 1.8GHz)ですが、サクサク気持ちよく動いています。これでもシミュレータの処理能力が十分(計測結果を忘れたが、iPhone 3GSより早い)です。

使い込んでみた感想

ARM評価ボードでの組み込みLinuxの開発経験、クロス環境でのコンパイルgdbカーネルを含めてアプリのデバッグ、と比べるとMonoTouchの開発環境はクロス開発を感じさせないとても素晴らしいものです。
実機で動作するアプリケーションのデバッグは、コードステップ,式評価、MonoDevelopからネイティブアプリ同様の操作で実行できます。

大きな声では言えないこと

開発にMac本体が必須であるために、趣味で行うには費用がかかりすぎかもしれません。技術的にはMac本体がなくても手持ちのWindowsマシンでの開発も可能っぽいです。実際にXCodeiPhoneアプリ開発をしてみたのですが、XCodeを使うとOSが頻繁にカーネルダンプしてしまったので、結局本体を購入しました。
MonoTouchのアプリはJail brokenなiPhoneでも動作します。これはシリアルインタフェースやBluetoothなどのハードウェアアクセスを進めるのに有効な手段でもあります。

まとめ

いずれにしろiPhoneアプリ開発にはMac本体が必須です。
趣味でちょっと試したい方ならば、まずは無料のApple developer pgoramアカウントを作成して、SDKとMonotouch評価版を入手されるのがおすすめです。アプリ動作がシミュレータに限定されますが、製品版とまったく同じ開発/デバッグ環境が使えますから、アプリを完成させるまでの環境として十分です。ちなみに、実機での開発/デバッグも、シミュレータでの環境と同じ手順,同じ感触で実行できます。
仕事で使われるなら、ライセンスを購入しましょう。会社から見ればプログラマ1日の人件費程度ですから、余計な手間を掛けずにさくっと実機評価までもっていくべきです。