SIN@SAPPOROWORKSの覚書

C#を中心に、夜な夜な試行錯誤したコードの記録です。

Objective-CのコードがWindowsで動作する!「Windows Bridge for iOS」(WinObjcのサンプルをコンパイルしてみた)

Windows Bridge for iOS

5月のBuild2015のKeynoteでプレゼンされていた、Objective-CのコードがWindwos10で動くよ!という信じられないプロジェクトが遂に公開されました。
※当時「Project Islandwood」と呼ばれていたものは、「Windows Bridge for iOS」となったようです。
Windows Bridge for iOS - Windows app development

f:id:furuya02:20150808032804p:plain

blogs.windows.com

同プロジェクトは、オープンソースとしてGithubで公開されています。
f:id:furuya02:20150808032729p:plain

WinObjcとは

Githubで公開されている、WinObjCとは、Windows(VisualStudio)上にObjective-Cの開発環境を提供するものです。
iOSAPIとの互換性をサポートしています。

動作させるための要件は次のようになっています。
1 Windows10
2 VisualStudio2015(無償で利用可能な Visual Studio 2015 Communityでも大丈夫とアナウンスされています)
 なお、 
 ・言語としてVisual C++
 ・ユニバーサルアプリの開発ツール(すべて)
 ・Windows 8.1Windows Phone 8.0/8.1 の開発ツール(すべて)
が必要です。

サンプルアプリ

プロジェクトにはサンプルが2つ入っていましたので、とりあえずこれをコンパイルしてみました。
https://github.com/Microsoft/WinObjC/releases/download/0.1-preview/winobjc.zip

HelloUI

次の図は、winobjc.zipの中のsampleフォルダの中にある「HelloUI」のWinStore10で実行したものです。
f:id:furuya02:20150808023644g:plain
※プロジェクトは、ストアアプリ(8.1、10)及びWindows Phone 8.1用となっています。
f:id:furuya02:20150808030003p:plain

WOCCatalog

続いて同じくサンプルに含まれる「WOCCatalog」です。
WindowsPhone用のプロジェクトをコンパイル・実行してみました。

f:id:furuya02:20150808032505g:plain

こちらは、iOSの各種コントロールが、ブリッジされて置き換えられている様子がよく分かります。
iOSからの移植が前提なので、Xamarinと違って独自にコントロールを作成した感が滲みでています・・・特にPickerの力ずく感がっパねすw
これがネイティブなiOS利用者にどう映るのか・・・

参考リンク

Open Sourcing the Windows Bridge for iOS | Building Apps for Windows
Microsoft/WinObjC · GitHub
ニュース - Microsoft、iOSアプリをWindows 10に移植するWindows Bridgeを早期公開:ITpro

furuya02.hatenablog.com