SlideShare a Scribd company logo
1 of 26
Download to read offline
Xamarin 概要 
2014/9/20 Plus 
Programming .net 勉強会#9 
Xamarin.iOS でデバイスを超え 
るプログラミング 
エクセルソフト株式会社 
Business Development Manager 
田淵義人 
ytabuchi@xlsoft.com 
03-5440-7875 / 080-7015-3586
自己紹介• 田淵義人 
• エクセルソフトのXamarin 担当。非開発者。 
• Xamarin でググれ 
• Twitter, Web, HTML5/CSS/JS, モバイル/ガ 
ジェット, Web マーケティングなどが好き 
• Twitter: @ytabuchi 
• Blog: http://ytabuchi.hatenablog.com/
自己紹介• 田淵義人 
• エクセルソフトのXamarin 担当。非開発者。 
• Xamarin でググれ(と言いたいw) 
• でも「Xamarin 日本語」でググると私のブログが!!! 
• Twitter, Web, HTML5/CSS/JS, モバイル/ガ 
ジェット, Web マーケティングなどが好き 
• Twitter: @ytabuchi 
• Blog: http://ytabuchi.hatenablog.com/
本セッションのゴール 
• Xamarin についてイメージを掴んでいただくこと 
• 出来ること出来ないことをご理解いただくこと 
• Xamarin に興味を持っていただくこと 
お知らせ 
• 本日の資料は短縮版です。全部入りは以下をご覧ください。 
http://j.mp/xm201408
今までのアプ 
リ開発
クロスプラットフォーム開発 
“no silver bullet”
Xamarin を 
使用した開発
Xamarin(ザマリン) 
“ネイティブ” アプリ 
C# / .NET 
コード共通化
“ネイティブ” 
アプリ 
• C# + .NET ランタイム 
• ネイティブUI 
• ネイティブ“パフォーマンス”
C# / Visual 
Studio で開 
発 
• async/await, LINQ, ラムダ式などの実装が使 
える 
• Java, Objective-C, Swift を書く必要がない 
• TFS, Resharper などのエコシステム 
button.TouchUpInside += (s, e) => { 
message.Text = "Hello!"; 
}; 
from p in Table<Person> () 
where p.ID == id 
select p;
iOS 
API 
100% 対応
Android 
API 
100% 対応
.NET BCL 
(Mono) 
• System.IO 
• ファイル操作の共通化 
• System.NET 
• ネットワーク操作の共通化 
• System.Linq 
• データ操作の簡素化、共通化 
• System.XML 
• XML 操作の簡素化、共通化 
• System.Threading 
• 上記全般もですが、非同期処理の恩恵
できること・できないことFAQ
FAQ 0 • そのT シャツかっこいい! 
• http://xamarin.com/prebuilt/sharp-shirt か 
らサンプルプロジェクトをダウンロードしてビルドしてくださ 
い。船便でTシャツが届きます!
FAQ 1 • でも、お高いんでしょう? 
• はいw 
• Mac が必須と聞いたんですが… 
• iOS アプリをビルドするのにXcode が必要なんです。 
• Visual Studio Express でも大丈夫? 
• VS はPro 以上が必要です。 
• Windows ストアアプリも対応してますか? 
• Visual Studio があるじゃない(Mac では無理ゲー) 
• ネイティブのAPI はどれくらい使えるの? 
• 全部がC# から使えるようにラップされたAPI です。 
• iOS SDK Beta には対応しているの? 
• Xamarin Alpha/Beta で対応し、iOS 正式版が出たら 
即日対応です。 
• Android L Preview / wear は対応しているの? 
• 最新のAlpha 版で対応しています。
FAQ 2 • ネイティブで作ったライブラリは使えるの? 
• この後のセッションにご期待くださいw 
• Binding してXamarin 用dll にする。 
• ネイティブライブラリを組み込んでP/Invoke やJNI 経由 
• iOS Framework をAndroid で、Android のjar を 
iOS では使えません。 
• Xamarin で作ったライブラリはネイティブで使えるの? 
• 使えません。 
• NuGet は使えるの? 
• 使えます。Xamarin 専用のComponentStore もあり 
ます。 
• WinForm やWPF 用のライブラリは使えるの? 
• 基本的には使えないと思います。 
• Prism (Patern & Practice 製のMvvm フレームワー 
ク) はPCL 化されているのでXamarin でも使えます。
FAQ 3 • どれくらい共通化できるの? 
• 30%~60% くらいかと思います。 
• OS 毎に開発するのは? 
• UI を定義する部分 
• OS 固有の機能を実装する部分 
• 共通化できるのは? 
• ロジック(データベースへのアクセス、通信処理など) 部 
分 
• 定義したUI に対してデータのやり取りをする部分 
• Xamarin.Forms を使用するとベーシックなUI は共 
通化できます。
FAQ 4 • 共有化はどうやってやるの? 
• Universal App (Shared 
Project) 
• PCL (Portable Class 
Library) 
• Profile に注意 
• リンク参照 
• MvvmCross などのフレーム 
ワーク
FAQ 5 • 日本語の資料ってあるの? 
• ・・・ 
• 鋭意努力します! >< 
• 英語ドキュメントはXamarin が山のように用意してい 
ますので、ぜひご覧ください。 
• サンプルが欲しいんですが? 
• Xamarin が山のように(ry なお、Apache 2.0 ラ 
イセンスなのでそのまま使っても大丈夫! 
• 書籍が欲しいんですが? 
• http://www.amazon.co.jp/exec/obidos/AS 
IN/4822298345/ 
• この後の参考資料をご参照ください
参考資料
サンプル・ブロ 
グなど 
• Xamarin.iOS サンプル 
• https://github.com/xamarin/monotouch-samples 
• Xamarin.Android サンプル 
• https://github.com/xamarin/monodroid-samples 
• Japan Xamarin User Group 
• http://j.mp/xm-jxug 
• 田淵ブログ 
• http://ytabuchi.hatenablog.com/entry/toc 
• Xamarin ブロググループ 
• http://j.mp/xm-htngrp 
• Qiita Xamarin タグ 
• http://qiita.com/tags/xamarin
Xamarin.For 
ms について 
• Build Insider インサイドXamarin(14) - 
Xamarin.Formsの基本構想と仕組み 
• http://www.buildinsider.net/mobile/insidexamarin/14 
• Build Insider Xamarin逆引きTips 連載 
• http://www.buildinsider.net/mobile/xamarintips 
• Xamarin.Forms ドキュメント(英語) 
• http://developer.xamarin.com/guides/cross-platform/ 
xamarin-forms/ 
• API ドキュメント(英語) 
• http://iosapi.xamarin.com/?link=N%3aXamarin.Form 
s 
• Xamarin.Forms サンプル(C#) 
• https://github.com/xamarin/xamarin-forms-samples/ 
tree/master/FormsGallery 
• Xamarin.Forms サンプル(XAML) 
• https://github.com/xamarin/xamarin-forms-samples/ 
tree/master/XAMLSamples
開発OS 対象OS IDE 必要なシステム 
Windows 
iOS 
Visual 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 統合インストーラーに同梱)
評価版 
http://xamarin.com/download
ご清聴 
ありがとうございます 
ご質問がありましたら、田淵までお気軽にどうぞ 
ytabuchi@xlsoft.com 
080-7015-3586 / 03-5440-7875 
Twitter: @ytabuchi 
Blog: http://ytabuchi.hatenablog.com/

More Related Content

More from Yoshito Tabuchi

Xamarin で Cognitive Services を使ってみよう
Xamarin で Cognitive Services を使ってみようXamarin で Cognitive Services を使ってみよう
Xamarin で Cognitive Services を使ってみようYoshito Tabuchi
 
Xamarin.Forms のこれまでとこれから
Xamarin.Forms のこれまでとこれからXamarin.Forms のこれまでとこれから
Xamarin.Forms のこれまでとこれからYoshito Tabuchi
 
Xamarinを触り始めた頃の話〜触りたい人に向けて〜
Xamarinを触り始めた頃の話〜触りたい人に向けて〜Xamarinを触り始めた頃の話〜触りたい人に向けて〜
Xamarinを触り始めた頃の話〜触りたい人に向けて〜Yoshito Tabuchi
 
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法Yoshito Tabuchi
 
20171202 Xamarinの歩き方
20171202 Xamarinの歩き方20171202 Xamarinの歩き方
20171202 Xamarinの歩き方Yoshito Tabuchi
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法Yoshito Tabuchi
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法Yoshito Tabuchi
 
Realm Mobile Platform 概要
Realm Mobile Platform 概要Realm Mobile Platform 概要
Realm Mobile Platform 概要Yoshito Tabuchi
 
Computer Vision と Translator Text API 使ってみた
Computer Vision と Translator Text API 使ってみたComputer Vision と Translator Text API 使ってみた
Computer Vision と Translator Text API 使ってみたYoshito Tabuchi
 
Xamarin から使う Azure
Xamarin から使う AzureXamarin から使う Azure
Xamarin から使う AzureYoshito Tabuchi
 
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~Yoshito Tabuchi
 
NET Standard と Xamarin
NET Standard と XamarinNET Standard と Xamarin
NET Standard と XamarinYoshito Tabuchi
 
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点Yoshito Tabuchi
 
Xamarin概要+最新情報
Xamarin概要+最新情報Xamarin概要+最新情報
Xamarin概要+最新情報Yoshito Tabuchi
 
ちょっとエモい話
ちょっとエモい話ちょっとエモい話
ちょっとエモい話Yoshito Tabuchi
 
Xamarin の概要と活用事例
Xamarin の概要と活用事例Xamarin の概要と活用事例
Xamarin の概要と活用事例Yoshito Tabuchi
 
Xamarinをこれから始める皆様へ
Xamarinをこれから始める皆様へXamarinをこれから始める皆様へ
Xamarinをこれから始める皆様へYoshito Tabuchi
 
BlueMonkeyプロジェクトのご紹介
BlueMonkeyプロジェクトのご紹介BlueMonkeyプロジェクトのご紹介
BlueMonkeyプロジェクトのご紹介Yoshito Tabuchi
 
Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Yoshito Tabuchi
 

More from Yoshito Tabuchi (20)

Xamarin で Cognitive Services を使ってみよう
Xamarin で Cognitive Services を使ってみようXamarin で Cognitive Services を使ってみよう
Xamarin で Cognitive Services を使ってみよう
 
Xamarin.Forms のこれまでとこれから
Xamarin.Forms のこれまでとこれからXamarin.Forms のこれまでとこれから
Xamarin.Forms のこれまでとこれから
 
Xamarinを触り始めた頃の話〜触りたい人に向けて〜
Xamarinを触り始めた頃の話〜触りたい人に向けて〜Xamarinを触り始めた頃の話〜触りたい人に向けて〜
Xamarinを触り始めた頃の話〜触りたい人に向けて〜
 
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
 
20171202 Xamarinの歩き方
20171202 Xamarinの歩き方20171202 Xamarinの歩き方
20171202 Xamarinの歩き方
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
Realm Mobile Platform 概要
Realm Mobile Platform 概要Realm Mobile Platform 概要
Realm Mobile Platform 概要
 
Computer Vision と Translator Text API 使ってみた
Computer Vision と Translator Text API 使ってみたComputer Vision と Translator Text API 使ってみた
Computer Vision と Translator Text API 使ってみた
 
Xamarin から使う Azure
Xamarin から使う AzureXamarin から使う Azure
Xamarin から使う Azure
 
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
 
NET Standard と Xamarin
NET Standard と XamarinNET Standard と Xamarin
NET Standard と Xamarin
 
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
 
Xamarin概要+最新情報
Xamarin概要+最新情報Xamarin概要+最新情報
Xamarin概要+最新情報
 
ちょっとエモい話
ちょっとエモい話ちょっとエモい話
ちょっとエモい話
 
Xamarin の概要と活用事例
Xamarin の概要と活用事例Xamarin の概要と活用事例
Xamarin の概要と活用事例
 
Xamarinをこれから始める皆様へ
Xamarinをこれから始める皆様へXamarinをこれから始める皆様へ
Xamarinをこれから始める皆様へ
 
Xamarin概要
Xamarin概要Xamarin概要
Xamarin概要
 
BlueMonkeyプロジェクトのご紹介
BlueMonkeyプロジェクトのご紹介BlueMonkeyプロジェクトのご紹介
BlueMonkeyプロジェクトのご紹介
 
Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15
 

Recently uploaded

Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 

Recently uploaded (11)

Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

Xamarin 概要 at Plus Programming .net 勉強会 (2014/9/20)

  • 1. Xamarin 概要 2014/9/20 Plus Programming .net 勉強会#9 Xamarin.iOS でデバイスを超え るプログラミング エクセルソフト株式会社 Business Development Manager 田淵義人 ytabuchi@xlsoft.com 03-5440-7875 / 080-7015-3586
  • 2. 自己紹介• 田淵義人 • エクセルソフトのXamarin 担当。非開発者。 • Xamarin でググれ • Twitter, Web, HTML5/CSS/JS, モバイル/ガ ジェット, Web マーケティングなどが好き • Twitter: @ytabuchi • Blog: http://ytabuchi.hatenablog.com/
  • 3. 自己紹介• 田淵義人 • エクセルソフトのXamarin 担当。非開発者。 • Xamarin でググれ(と言いたいw) • でも「Xamarin 日本語」でググると私のブログが!!! • Twitter, Web, HTML5/CSS/JS, モバイル/ガ ジェット, Web マーケティングなどが好き • Twitter: @ytabuchi • Blog: http://ytabuchi.hatenablog.com/
  • 4. 本セッションのゴール • Xamarin についてイメージを掴んでいただくこと • 出来ること出来ないことをご理解いただくこと • Xamarin に興味を持っていただくこと お知らせ • 本日の資料は短縮版です。全部入りは以下をご覧ください。 http://j.mp/xm201408
  • 9. “ネイティブ” アプリ • C# + .NET ランタイム • ネイティブUI • ネイティブ“パフォーマンス”
  • 10. C# / Visual Studio で開 発 • async/await, LINQ, ラムダ式などの実装が使 える • Java, Objective-C, Swift を書く必要がない • TFS, Resharper などのエコシステム button.TouchUpInside += (s, e) => { message.Text = "Hello!"; }; from p in Table<Person> () where p.ID == id select p;
  • 11. iOS API 100% 対応
  • 13. .NET BCL (Mono) • System.IO • ファイル操作の共通化 • System.NET • ネットワーク操作の共通化 • System.Linq • データ操作の簡素化、共通化 • System.XML • XML 操作の簡素化、共通化 • System.Threading • 上記全般もですが、非同期処理の恩恵
  • 15. FAQ 0 • そのT シャツかっこいい! • http://xamarin.com/prebuilt/sharp-shirt か らサンプルプロジェクトをダウンロードしてビルドしてくださ い。船便でTシャツが届きます!
  • 16. FAQ 1 • でも、お高いんでしょう? • はいw • Mac が必須と聞いたんですが… • iOS アプリをビルドするのにXcode が必要なんです。 • Visual Studio Express でも大丈夫? • VS はPro 以上が必要です。 • Windows ストアアプリも対応してますか? • Visual Studio があるじゃない(Mac では無理ゲー) • ネイティブのAPI はどれくらい使えるの? • 全部がC# から使えるようにラップされたAPI です。 • iOS SDK Beta には対応しているの? • Xamarin Alpha/Beta で対応し、iOS 正式版が出たら 即日対応です。 • Android L Preview / wear は対応しているの? • 最新のAlpha 版で対応しています。
  • 17. FAQ 2 • ネイティブで作ったライブラリは使えるの? • この後のセッションにご期待くださいw • Binding してXamarin 用dll にする。 • ネイティブライブラリを組み込んでP/Invoke やJNI 経由 • iOS Framework をAndroid で、Android のjar を iOS では使えません。 • Xamarin で作ったライブラリはネイティブで使えるの? • 使えません。 • NuGet は使えるの? • 使えます。Xamarin 専用のComponentStore もあり ます。 • WinForm やWPF 用のライブラリは使えるの? • 基本的には使えないと思います。 • Prism (Patern & Practice 製のMvvm フレームワー ク) はPCL 化されているのでXamarin でも使えます。
  • 18. FAQ 3 • どれくらい共通化できるの? • 30%~60% くらいかと思います。 • OS 毎に開発するのは? • UI を定義する部分 • OS 固有の機能を実装する部分 • 共通化できるのは? • ロジック(データベースへのアクセス、通信処理など) 部 分 • 定義したUI に対してデータのやり取りをする部分 • Xamarin.Forms を使用するとベーシックなUI は共 通化できます。
  • 19. FAQ 4 • 共有化はどうやってやるの? • Universal App (Shared Project) • PCL (Portable Class Library) • Profile に注意 • リンク参照 • MvvmCross などのフレーム ワーク
  • 20. FAQ 5 • 日本語の資料ってあるの? • ・・・ • 鋭意努力します! >< • 英語ドキュメントはXamarin が山のように用意してい ますので、ぜひご覧ください。 • サンプルが欲しいんですが? • Xamarin が山のように(ry なお、Apache 2.0 ラ イセンスなのでそのまま使っても大丈夫! • 書籍が欲しいんですが? • http://www.amazon.co.jp/exec/obidos/AS IN/4822298345/ • この後の参考資料をご参照ください
  • 22. サンプル・ブロ グなど • Xamarin.iOS サンプル • https://github.com/xamarin/monotouch-samples • Xamarin.Android サンプル • https://github.com/xamarin/monodroid-samples • Japan Xamarin User Group • http://j.mp/xm-jxug • 田淵ブログ • http://ytabuchi.hatenablog.com/entry/toc • Xamarin ブロググループ • http://j.mp/xm-htngrp • Qiita Xamarin タグ • http://qiita.com/tags/xamarin
  • 23. Xamarin.For ms について • Build Insider インサイドXamarin(14) - Xamarin.Formsの基本構想と仕組み • http://www.buildinsider.net/mobile/insidexamarin/14 • Build Insider Xamarin逆引きTips 連載 • http://www.buildinsider.net/mobile/xamarintips • Xamarin.Forms ドキュメント(英語) • http://developer.xamarin.com/guides/cross-platform/ xamarin-forms/ • API ドキュメント(英語) • http://iosapi.xamarin.com/?link=N%3aXamarin.Form s • Xamarin.Forms サンプル(C#) • https://github.com/xamarin/xamarin-forms-samples/ tree/master/FormsGallery • Xamarin.Forms サンプル(XAML) • https://github.com/xamarin/xamarin-forms-samples/ tree/master/XAMLSamples
  • 24. 開発OS 対象OS IDE 必要なシステム Windows iOS Visual 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 統合インストーラーに同梱)
  • 26. ご清聴 ありがとうございます ご質問がありましたら、田淵までお気軽にどうぞ ytabuchi@xlsoft.com 080-7015-3586 / 03-5440-7875 Twitter: @ytabuchi Blog: http://ytabuchi.hatenablog.com/