45
クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要 エクセルソフト株式会社 営業部 Business Development Manager 田淵 義人 [email protected] 03-5440-7875 / 080-7015-3586 2014/4 © XLsoft K.K.

クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Embed Size (px)

DESCRIPTION

Xamarin 製品資料です。Xamarin のイメージが伝わるように概要を中心に纏めなおしました。SIerさん、開発会社さんに使っていただけると嬉しいです。 pptx を置いておきますので、ご自由にご利用ください。 pptx: http://jp.xlsoft.com/demo2/xamarin/Xamarin_201404_summary.pptx ブログ: http://ytabuchi.hatenablog.com/

Citation preview

Page 1: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

クロスプラットフォームモバイルアプリ開発ツール

Xamarin 概要エクセルソフト株式会社 営業部

Business Development Manager田淵 義人

[email protected] / 080-7015-3586

2014/4 © XLsoft K.K.

Page 2: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

会社概要

名称 エクセルソフト株式会社

設立 平成3年7月1日

所在地 東京都港区三田3-9-9

資本金 1000万円

事業内容 ソフトウェアの開発・販売事業

主要取引先 伊藤忠テクノソリューションズ、インテル、SCSK、HPCシステムズ、NTTコムウェア、NTTデータ、シネックスインフォテック、新日鉄住金ソリューションズ、ソニー、ソフトバンクBB、ダイワボウ情報システム、東芝、日本アイ・ビー・エム、日本SGI、日本電気、日本ヒューレット・パッカード、日本ユニシス、ネットワールド、野村総合研究所、パナソニック、日立製作所、富士通、マイクロソフト、三菱電機 等

関連会社 XLsoft Corporation アメリカ カリフォルニア州

「開発ツールはエクセルソフトで」をモットーに。

販売/サポートだけでなく、運用もお客様と一緒に考えます。

大きい会社ではありませんが、レスポンスの速さと技術の高さが自慢です。

Page 3: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

はじめに

Page 4: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

モバイル デバイスのシェア• 家庭市場の所有率はタブレット 20.1%、スマートフォン 49.8% - IDC Japan

• 2014年はタブレットが、ノートPCとデスクトップPCを合わせた台数とほぼ同じになる - Canalys

• 2012年度の法人向けタブレット端末出荷は79万台。2015年度には2.2倍に。 - ICT総研

国内モバイル/クライアントコンピューティング機器 家庭ユーザー利用実態調査結果を発表 http://j.mp/1jDKQMxニュース - タブレット端末の世界出荷台数、2014年はパソコンと同水準に、Canalysの推計:ITpro http://j.mp/1flA8Dp2013年度 法人向けタブレット端末の市場予測:レポート|ICT総研 市場調査・マーケティングカンパニー http://j.mp/1cBUTdc

Page 5: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

「うちもモバイル対応を考えてるんだよね…」

「この提案、Android やiPhone で出来ないかな?」こんなお客様のご要望がどんどん出てきます!

Page 6: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

「Windows アプリの資産をiOS/Android に使いまわすことはできないのかな…?」

こんな声があれば選択肢は一つです。

Page 7: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

シナリオ

Page 8: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

速い納期安い価格高いUX

開発に求められるもの

Page 9: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

クロスプラットフォーム開発

選択肢

Page 10: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

今までのクロスプラットフォーム開発

ブラウザー

OS (iOS, Android, Windows)

Web

ハイブリッド

Page 11: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

HOTなクロスプラットフォーム開発

ブラウザー

Xamarin

OS (iOS, Android, Windows)

Web

ハイブリッド

Page 12: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Xamarinとは?

Page 13: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Xamarin(ザマリン)=企業名、製品ブランド名

=C# で iOS/Android のネイティブアプリを作成できる開発ツール

Page 14: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

企業名/製品ブランド名

• Gnome, Mono の開発者である Migel de Icaza(ミゲル・デ・イカザ

)氏が2011年にローンチした会社

Gnome:Linux のデスクトップ環境

Mono:.NET Framework 互換の環境を実現する OSS

Mono は 2001年7月に OSS 化され .NET 1.0 から対応

• Xamarin.Android, Xamarin.iOS, Xamarin.Mac, Xamarin

Studio などの総称

Mono (ソフトウェア) - Wikipediahttp://j.mp/1p8kRjFMono の .NET 互換状況http://www.mono-project.com/Compatibility

Page 15: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Xamarin の特徴

“フル” ネイティブ動作

C#からすべての API が使える

パフォーマンス高

コンパイルされたパッケージ

C#, .NET, Visual Studio

既存の資産やスキルを活用

Page 16: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

出来ること

Page 17: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

C#/Visual Studio で開発ビジネスロジックの共通化OS の機能を全て使う“フル” ネイティブ

Page 18: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

更に

既存の Windows アプリ資産の有効活用

Page 19: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

C#/Visual Studio で開発

• async/await, LINQ, ラムダ式などの C# の実装が使える

• Java, Objective-C を書く必要がない

• TFS, Resharper などのエコシステムを活用できる

button.TouchUpInside += (s, e) => {message.Text = "Hello!";

};

from p in Table<Person> ()where p.ID == idselect p;

http://xamarin.com/csharp

Page 20: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

ビジネスロジックの共通化

• どこを共通化できるか?

OS 毎に開発

UI を定義する部分

OS 固有の機能を実装する部分

定義した UI に対してデータのやり取りをする部分

共通化

ロジック (データベースへのアクセス、通信処理など) 部分

定義した UI に対してデータのやり取りをする部分

• どのように共通化するのか?

PCL (Portable Class Library) を活用

リンク参照

フレームワークを使用

PCL 版サンプルプロジェクト http://jp.xlsoft.com/demo2/xamarin/TaskyPortable_ja.zipリンク参照版サンプルプロジェクト http://jp.xlsoft.com/demo2/xamarin/TaskyPro_ja_2012.zip

Page 21: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

OS の機能を全て使う - iOS

• レシピ集

• API

レシピ集 http://docs.xamarin.com/recipes/iOS API http://iosapi.xamarin.com/

Page 22: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

OS の機能を全て使う - Android

• レシピ集

• API

レシピ集 http://docs.xamarin.com/recipes/iOS API http://androidapi.xamarin.com/

Page 23: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

“フル” ネイティブ

Xamarin.iOS は、フル AOT (Ahead Of Time) コンパイルで、Apple の App Store に対応した ARM バイナリを生成。

Xamarin.Android は、Android デバイスの JIT (Just In Time) コンパイルを利用。サイズも小さい。

Application Package Sizes | Xamarinhttp://docs.xamarin.com/guides/android/advanced_topics/application_package_sizes/

Page 24: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

出来ること(Demo)

Page 25: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

出来ないこと

Page 26: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Write Once, Run Anywhere

Page 27: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

OS 固有の機能と UI はある程度の知識を持って個別に開発する必

要がある。また、Windows だけでは iOS ア

プリは開発できない。

Page 28: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

少し詳しく

• すべてを共通化することはできないので、OS 固有の機能と UI は個別に開

発する

共通化できるのはアプリのロジック部分のみだが、Xamarin.Mobile,

MvvmCross などの手法により共通化部分を増やすことは可能

• C# が書けます!だけでは不十分かも

ある程度 Java, Objective-C でのネイティブアプリ開発経験があるとベター

• iOS の画面作成は次の方法が用意されている。

Visual Studio 上で UI を C# で記述する

Mac の Xcode Interface Builder 上で UI をドラッグ&ドロップで作成する

Page 29: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

必要なシステム

Page 30: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

開発OS 対象 OS IDE 必要なシステム

Windows

iOSVisual Studio

Windows• Windows 7 以上• Visual Studio 2010/2012/2013 Professional 以上(Express 未対応)• Xamarin.iOS (Xamarin 統合インストーラーに同梱)Mac• OS X Lion 10.8 以上• Xcode 5

Xamarin Studio 未対応

Android

Visual Studio

• Windows 7 以上• Visual Studio 2010/2012/2013 Professional 以上(Express 未対応)• J2SDK 1.6/1.7 32bit (Xamarin 統合インストーラーに同梱)• Android SDK, NDK (Xamarin 統合インストーラーに同梱)• Gtk# (Xamarin 統合インストーラーに同梱)• Xamarin.Android (Xamarin 統合インストーラーに同梱)

Xamarin Studio

• Windows 7 以上• J2SDK 1.6/1.7 32bit (Xamarin 統合インストーラーに同梱)• Android SDK, NDK (Xamarin 統合インストーラーに同梱)• Gtk# (Xamarin 統合インストーラーに同梱)• Xamarin.Android (Xamarin 統合インストーラーに同梱)

Mac

iOS Xamarin Studio• OS X Lion 10.8 以上• Xcode 5• Xamarin.iOS (Xamarin 統合インストーラーに同梱)

Android Xamarin Studio

• OS X Lion 10.7 以上• J2SDK 1.6/1.7• Android SDK, NDK (Xamarin 統合インストーラーに同梱)• Xamarin.Android (Xamarin 統合インストーラーに同梱)

Page 31: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

価格・評価版

Page 32: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

ライセンス体系、価格、サポート

• Xamarin.iOS Business Subscription

Xamarin.Android Business Subscription

1 開発者の永続ライセンス。

弊社から 1年間 日本語でのサポート、1年間のバージョンアップ

• 1開発者、1プラットフォーム毎、1年毎に ¥127,800 です。

ボリュームディスカウントがあります。

Page 33: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

評価版

http://j.mp/xamarin-dl

Page 34: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

事例

Page 35: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Rdio: 50,000 行のコードを共有

• Rdio は、ミュージック ストリーム サービスで、

17ヶ国で 2000万曲を提供しています。

• アプリの開発チームは、以前は、プラットフォ

ームごとのコードベースでビルドとメンテナンス

を行っていました。

• Xamarin を使用することで、現在の Rdio

は iOS、Android、Windows 間で

50,000 行の C# のコードを共有でき、開

発チームは、機能やユーザー エクスペリエン

スに集中することができました。

Xamarin 事例 : XLsoft エクセルソフトhttp://www.xlsoft.com/jp/products/xamarin/apps.htmlApps built using Xamarin - Xamarinhttp://xamarin.com/apps

Page 36: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

pCloud

• オンラインストレージアプリ

自動アップロード

スマホ内の写真、ビデオなどに簡

単にアクセス

ファイルサイズ制限なし

オフラインファイルなど

• 一般的なオンラインストレージの

機能はすべて備わっています

• iPhone, Android アプリpCloudhttp://xamarin.com/apps/app/pcloudXamarin 事例紹介 - pCloudhttp://ytabuchi.hatenablog.com/entry/2014/03/20/142755

Android

iPhone

Page 37: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Hitcents - Draw a Stickman EPIC

• MonoGame を利用

XNA 4 の OSS 実装

• 95%コードを共通化

• iPhone, iPad, Android,

Windows ストアアプリ

Draw A Stickman EPIC now available for iPhone, iPad and Windows 8 | Xamarin Bloghttp://blog.xamarin.com/draw-a-stickman-epic-now-available-for-iphone-ipad-and-windows-8-2/MonoGame - Write Once, Play Everywhere - Homehttp://monogame.codeplex.com/

Page 38: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Kick The Ball

• 3Dゲーム

• スムーズに動作し

ボールが当たった

時の 3D の計算

もバッチリです。

• iPhone, iPad,

Android アプリ

Keck The Ballhttp://j.mp/QC8P2oXamarin 事例紹介 - Kick The Ballhttp://ytabuchi.hatenablog.com/entry/2014/04/07/185112

iPhone

iPad

Android

Page 39: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Microsoft &Xamarin &

XLsoft

Page 40: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Microsoft と Xamarin の活動: 全社的により緊密な関係

• 2013/11/13 Microsoft と Xamarin がグローバルパートナーシップを発表

• Build 2014 で .NET Foundation の設立を発表。Xamarin も参画し、

.NET 周りの技術や Xamarin.Mobile などが OSS に

• Microsoft Japan

Microsoft Conference 2013 でのご紹介

Developer Summit 2014 でのご紹介

De:code

Microsoft and Xamarin Partner Globally to Help You Build Great Apps | Xamarin Blog http://j.mp/N1GX5SiOS / Android / Windows すべてに対応したアプリを作るには [ MSC 2013 ] http://j.mp/1gKLC6SXamarin と Visual Studio でまとめて作る iOS / Android / Windows アプリ ( Developers Summit 2014 ) http://j.mp/1nFx8G9Windows Azure モバイル サービス SDK の GitHub でのオープン ソース化と、Xamarin とのパートナーシップ提携に関するお知らせ http://bit.ly/WgvZZS

Page 41: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

まとめ

Page 42: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

「うちもモバイル対応を考えてるんだよね…」

「この提案、Android やiPhone で出来ないかな?」こんなお客様のご要望がどんどん出てきます!

Page 43: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

「Windows アプリの資産をiOS/Android に使いまわすことはできないのかな…?」

こんな声があれば選択肢は一つです。

Page 44: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

Xamarin の特徴

“フル” ネイティブ動作

C#からすべての API が使える

パフォーマンス高

コンパイルされたパッケージ

C#, .NET, Visual Studio

既存の資産やスキルを活用

Page 45: クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要

ご清聴ありがとうございます

ご質問がありましたら、田淵までお気軽にどうぞ[email protected]

080-7015-3586 / 03-5440-7875Twitter: @ytabuchi

Blog: http://ytabuchi.hatenablog.com/