「iPhoneアプリ作りたいけど、Macをまず買わないと、ってのがなぁ〜・・・。」
という話をよく耳にするのですが、
これまでは、MacとXcode、iPhone SDKでの開発以外に、「Adobe Flash Professional CS5」の「Packager for iPhone」(など)を使うことで、WindowsでもiPhoneアプリの開発ができましたが、それが出来なくなる、というか、違反になるのではないかという話です。
スティーブ・ジョブズ氏、iPhone SDK 4でクロスコンパイラの使用を禁止した理由を説明@APPLE LINKAGEより一部引用:
ジョブズ氏は、なぜAppleがiPhone SDK 4の使用許諾契約を変更したのかというジョン・グルーバー氏の記事を挙げて、洞察力があり、悪くないと返信しています。グルーバー氏は、AppleはネイティブのiPhone OS開発をコントロールしたいと考えており、クロスプラットフォームソリューションはiPhoneの独占性やiPhoneネイティブアプリを希薄化させると述べています。またグルーバー氏は、クロスプラットフォームコンパイラが高品質なアプリを作り出すことはまれであると述べており、ジョブズ氏は2通目の返信メールで、「プラットフォームとデベロッパの間の仲介層は、最終的には標準以下のアプリをもたらし、プラットフォームの進展の妨げとなる」と述べ、この点を指摘しています。
Apple、「iPhone OS 4 SDK」規約変更 – Flash CS5/MonoTouch排除へ@マイコミジャーナルより一部引用:
もともと3.3.1ではサードパーティ製アプリでのプライベートAPIコールを禁止し、ドキュメントに記された指定APIを利用するよう規定されていたが、これがiPhone OS 4 SDKベータではさらに開発言語までもが指定されるようになっている。新規約によれば、iPhoneアプリはiPhone OSやWebKitで実行可能なObjective-C/C/C++あるいはJavaScriptで必ず記述されなければならないという。また、これら言語で記述されたコードのみがコンパイルによって規定のAPI群へのアクセスを許可されるという。中間言語の使用や中間レイヤーを用いるツールの利用も禁止されるということだ。