わんくま同盟大阪勉強会32で発表しました

C#iPhone開発 with MonoTouch」という題で発表してきました。

View more documents from Shin Ise.

そして移植デモのソースはこちら http://svn.iseteki.net/iseteki/users/ebina/WankumaOsaka32/trunk/

今回はデモ多め構成でお送りしました。特に、はてなフォトライフに写真を投稿するAndroidアプリ - FotoHook - はこべブログ♨Windows Mobileで似たようなものを作って、それをiPhoneにライブで移植するという試みをしましたが失敗。ぶっちゃけ10分でいけると思ってましたが…ライブコーディングってやっぱり大変。

このアプリはもう少しブラッシュアップしてWindows Marketplace for MobileとAppStoreにあげたいと思います!

あと質問とか反応の中からいくつかメモ。

中の人降臨

どうもustに中の人らしき人が降臨して、こんな情報が持たらされました。*1

  • MonoTouch 1.1.1 がでてるよ!→http://monotouch.net/Releases/MonoTouch_1.1.1 *2
  • お値段 $399/Developer/Year は初年のことで、更新はもっと安いよ!
  • 1.2になったら System.Data、System.Web.Services、WCF が使えるようになるよ!

はてなフォトライフAPIって Atom でしょ?System.Web ないとだめなんじゃないの?

System.Webを使わない設計になっているAtomAPIPhotoUploaderのソースを、Compact Frameworkに対応させて*3使用しています。いまどこカメラ/いまどこナビで使用されているものと同じものです。
ちなみに、Monoはフルの.NET FrameworkAPIがほぼ実装されていてMonoTouchでもこれがほとんど使えますが、Windows Mobileで使用される.NET Compact Frameworkはそれよりもずっとクラスもメソッドも減っています。ですので、先にWM版を作った方が移植/スケールしやすいです。

Interface Builder からObjective-Cのソースの生成について

MonoDevelopの開発サポートと同じように、Interface Builderでも自動でプロパティとかが生成されるのではないかという指摘がありました。確かに、Interface BuilderにはObjective-Cのクラスを生成するメニューっぽいものがありますが、挙動的にはソースファイルとか新規に上書きしそうな感じ。FileMergeが起動しちゃったりしたし…。

*1:おこられんじゃないかとガクブルなう

*2:プレゼンの初版書いてたときが1.1でたばかりの頃だったので更新追いついてなかったです。ごめんなさい。

*3:といっても、HttpWebRequestのパラメータを少し操作しただけ