先週開催されたマイクロソフトの「de:code 2016」の2日目。朝イチでスタートしたのが、日本マイクロソフト新米エバンジェリストの「ちょまど」こと千代田まどかさんと愉快な仲間たちによる「これから始めるXamarin」のセッションだ。超満員となったセッションの模様をお伝えする。
「モバイル開発の困った」にXamarinが効く!
マイクロソフトのモバイルデバイス向けのクロスプラットフォーム開発ツールである「Xamarin(ザマリン)」に初めて触れる人向けに行なわれた今回のセッション。Xamarinの概要を紹介しつつ、環境構築での“はまりポイント”を解説するのがセッションの趣旨だ。9時半開始にも関わらず、会場は両端に立ち見が並ぶ超満員の状態だ。
セッションはエバンジェリストの砂金信一郎さんが、会場にガチ勢がいないか確認することところからスタート。写真もSNSもOKという最近のマイクロソフトのオープン性を示すかのような粋なふるまいをアピールしつつ、まずは4月にエバンジェリストとなった千代田まどかさん(以下、ちょまどさん)を紹介する。
「ちょまど」として知られている千代田まどかさんは、前職でのXamarin好きが講じて、先日マイクロソフトに入社。滑舌を求められるエバンジェリストでありながら、極度のびびり症なちょまどさんは、「ち、ち、よだまどかです」たどたとしく自己紹介。「今日は緊張しすぎて、朝ご飯を吐きそうになりました」と吐露し、会場に不安がよぎる。
しかし、Xamarinの話になるとちょまどさんは一転して饒舌に。砂金さんから「そもそもXamarinってなんなんですか?」と振られると、ちょまどさんは「一言で言うと、クロスプラットフォーム開発ツールの1つです。iOSやAnrdoidのモバイルアプリ作りたいなあ。もしかしたら、Windows版もほしいなあ、というときにXamarinが使えます!」と一気にアピールする。
続いて「Xamarinを使わないと、どうなるんでしたっけ?」(砂金さん)と振ると、ちょまどさんは「既存のモバイル開発はターゲットプラットフォーム特化型なので、iOSはSwift、AndroidはAndroid Studio、WindowsはVisual StudioやC++などを使います。見ての通り、言語やツールはばらばらでプラットフォームごとにコードが完全に分離してしまいます。スキルやコードの再利用ができないし、プラットフォームごとの実装差異もでてきます。うーん」とのお答え。「それはけっこう困りますね~」とベタに応じる砂金さんに対して、ちょまどさんは「そこでXamaxinですよ!!!」とテンションを上げる。
モバイル開発を効率化できるXamarin。でもお高いんでしょ?
もともとクロスプラットフォーム開発のアプローチは、大きくWebアプリ、ネイティブアプリ、Webとネイティブハイブリッドアプリの3つがある。しかし、パフォーマンスやスキルの習得、ストアでの配布などで、それぞれ一長一短がある。
これに対して、Xamarinはロジック部分をC#で共通化し、UI部分のみネイティブコードで記述する。SwiftやJavaを1行も書かず、Visual Studioですべてのプラットフォームの開発が可能だ。しかも各プラットフォームのネイティブAPIを100%利用できるため、アプリケーションのパフォーマンスもネイティブと同じだ。ただ、残念ながら日本語ユーザーがまだまだ少なく、資料は英語がほとんど。ちょまどさんは「みんながんばって!私もがんばる」と聴衆にアピールする。
最近はXamarinの事例も増えているという。グローバルではSlackのアプリがXamarinサービスを使っているほか、基調講演でも紹介されたブリジストンや三井住友銀行、NHKの紅白歌合戦の公式アプリでもXamarinが採用されている。その他、日本酒アプリのSakemony(エムティアイ)や電気自動車の充電スポット検索アプリ「EVsmart」(アユダンテ)などスタートアップの採用も増えている。
開発が容易になり、ネイティブAPIを使えるので性能も問題なし。実績が増えてきているのもわかったが、当然「でも、お高いんでしょう?」という素朴な疑問が出てくる。これに対してちょまどさんは、「確かに高かった。開発者ごとに1年で12万円程度。iOSとAndroid両方開発したかったら、倍の24万円かかっていました」と説明する。
しかし、2016年2月にマイクロソフトがXamarinを買収し、2016年4月にXamarinの無償化が発表。Buildの会場で聴衆が「やったー!」となっただけではなく、エバンジェリストとして入社直後だったちょまどさんも「やったー!」となったようだ。現在はVisual StudioであればXamarinが無償で使えるようになっている。