SlideShare una empresa de Scribd logo
1 de 68
Descargar para leer sin conexión
はじめに・ 
Xamarin 概要 
2014/11/8 
第2回Japan Xamarin 
User Group Conference 
西日本編 
エクセルソフト株式会社 
Business Development Manager 
田淵義人 
ytabuchi@xlsoft.com 
03-5440-7875 / 080-7015-3586
JXUGのご紹 
介 
• サイト 
• http://jxug.org 
• Japan Xamarin User Group (JXUG) 
• 読み方ェ… 
• コミュニティ概要 
• JXUG は2014/2/18 に発足したXamarin を愛する方のコ 
ミュニティです。 
• 初心者の方が参加しやすく、上級者の方も気軽に情報交換でき 
る場に出来ればいいなと考えています。 
• 活動場所 
• http://www.facebook.com/groups/xm.jxug 
• Twitter タグ 
• #JXUG 
• 運営メンバー 
• 絶賛募集中です! 
• 手伝える方はxm.jxug@gmail.com まで
facebook グループへのご参加お 
待ちしております。後、ロゴというか 
キャラクターが必要だと思うんです 
よー?JXUG のロゴ書いて頂ける 
方も募集中です。
本セッションのゴール 
• Xamarin についてイメージを掴んでいただくこと 
• 出来ること出来ないことをご理解いただくこと 
• Xamarin に興味を持っていただくこと 
お知らせ 
• 今日のスライド 
• アンケートにご協力ください。 
• http://j.mp/jxugc2w-enq
自己紹介• 田淵義人 
• エクセルソフトのXamarin 担当。非開発者。 
• Xamarin でググれ 
• Twitter, SNS, Web, HTML5/CSS/JS, モバ 
イル/ガジェット, Web マーケティングなどが好き 
• Twitter: @ytabuchi 
• Blog: http://ytabuchi.hatenablog.com/
自己紹介• 田淵義人 
• エクセルソフトのXamarin 担当。開発者になりたい。 
• Xamarin でググれ(と言ってみたいw) 
• Twitter, SNS, Web, HTML5/CSS/JS, モバ 
イル/ガジェット, Web マーケティングなどが好き 
• Twitter: @ytabuchi 
• Blog: http://ytabuchi.hatenablog.com/
はじめに・アンケート
アンケート• Xamarin 知ってますか? 
• Xamarin 触ってみた方は? 
• 開発環境は? (Windows / Mac) 
• モバイル開発経験は? 
• 個人として?業務として?
スマホ、タブレットが増えてるの 
でモバイルアプリ作成が必須で 
すぜ?っていう導入部分のデー 
タが入ります(略
今までのアプ 
リ開発
モバイル向けクロスプラット 
フォーム開発環境 
“no silver bullet”
何を使えばい 
いの? 
• ネイティブ(Objective-C/Swift, Java) 
• Xcode, Android Studio/eclipse 
• HTML5, CSS3, JS 
• Cordova (PhoneGAP, Monaca) 
• Sencha Touch 
• C++/Delphi 
• RAD Studio XE/Appmethod 
• JS 
• Titanium 
• ActionScript 
• Flash/AIR
ハイブリッド開 
発 
共通化による最小 
限の機能 
分厚いラッパー 
リリースまでの日数 
適切なUX かどう 
か? 
App Generation
Xamarin(ザマリン) 
・C# / .NET / Visual Studio 
・“ネイティブ” アプリ 
・コード共通化 
・API 100% 移植
C# / .NET
C# で開発• 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;
“ネイティブ” アプリ
“ネイティブ” 
アプリ 
• .NET ランタイム 
• ネイティブUI / UX 
• ネイティブ“パフォーマンス”
Mono Miguel de Icaza (ミゲル・デ・イカザ1972年- ) : GNOME、Mono 
の開発者 
1999年ミゲル氏、Helix Code 設立 
2001年6月Helix Code をXimian(ジミアン) に社名変更し、Mono 
プロジェクト開始 
2001年7月Mono OSS 化 
2003年8月Novell がXimian を買収。ミゲル氏はNovell 開発部門 
のバイスプレジデントに就任 
2004年6月Mono 1.0 リリース 
2011年4月Attachmate のNovell 買収に伴い、Mono 開発者のレ 
イオフ実施 
2011年5月Xamarin 設立 
2011年7月Novell からXamarin にMono, MonoTouch, Mono 
for Android などが譲渡される 
2013年2月Xamarin 2.0 リリース 
2014年5月Xamarin 3.0 リリース 
ミゲル・デ・イカザ(Wiki) http://j.mp/1p8kRjF | Mono (Wiki) http://j.mp/1vxsP5L
Windows 
API
iOS 
API 
100% 対応
Android 
API 
100% 対応
Xamarin.An 
droid 
http://www.bui 
ldinsider.net/m 
obile/insidexam 
arin/07
DEMO
コード共通化
.NET BCL 
(Mono) 
• System.IO 
• ファイル操作の共通化 
• System.NET 
• ネットワーク操作の共通化 
• System.Linq 
• データ操作の簡素化、共通化 
• System.XML 
• XML 操作の簡素化、共通化 
• System.Threading 
• 上記全般もですが、非同期処理の恩恵
Xamarin を 
使用した開発
共有方法• PCL 
• Visual Studio 2012 / Xamarin Studio 4.2 (要追 
加ライブラリ) 
• PCL (Portable Class Library) - Xamarin 3 の新し 
いコード共有テクニック: XLsoft エクセルソフト 
• http://www.xlsoft.com/jp/products/xamarin/port 
able_class_libraries.html 
• Shared Project 
• Visual Studio 2013 Update 2 / Xamarin Studio 
5.0 
• Shared Project - Xamarin 3 の新しいコード共有テク 
ニック: XLsoft エクセルソフト 
• http://www.xlsoft.com/jp/products/xamarin/shar 
ed_projects.html 
• Xamarin.Forms 
• 後述
PCL 
Windows RT 
iOS Android
Shared 
Project 
プロジェクトをリンク 
する 
#if platform
Xamarin.For 
ms - 画面の 
共通化 
UI “コード”の共通 
化 
ビルド時にネイティブ 
UI にマップ 
XAML で書ける! 
(ただし手動) 
Phone
API 100% 移植
API 100% 
移植 
• Xamarin.iOS 
• iOS 8.1 対応済み 
• iOS SDK リリースと同日 
• 次期iOS SDK Beta とXamarin.iOS 
Alpha/Beta で時期iOS 対応アプリを開発可能 
• Xamarin はiOS 8 に完全対応- Xamarin で 
iOS 8 をさらに素晴らしく(紹介記事) 
• Xamarin.Android 
• Android L Preview, Android wear は対応済み 
• Lollipop API 21 は2014/11/7 時点では未対応 
• 今までは1ヶ月~3ヶ月程してリリース 
• Android L Developer Preview / Android 
Wear をサポート(紹介記事)
DEMO
最新機能・その他サービス 
http://www.xlsoft.com/jp/products/xamarin/xamarin_platform_previews.html 
http://www.xlsoft.com/jp/products/xamarin/introducing_xamarin_insights.html
Xamarin 
Android 
Player 
• Virtual Box ベースの高速Android エミュレー 
ター 
• http://yutawatanabe.hatenablog.com/entr 
y/xamarin-android-player-preview-install
Sketches • iOS, Forms などのリアルタイム実行環境 
• http://qiita.com/ytabuchi/items/22b616d7 
558b41b4726c 
• https://www.youtube.com/watch?v=v9vE 
hwomUEY&t=19m0s 
最新のYosemite 
10.10 / Xcode 
6.1 / Xamarin 
Studio 5.6.2 
(Alpha)で動かな 
い… 辛み…
Xamarin 
Profiler 
• 解析ツール 
• 未調査… すみません…
Xamarin 
Insights 
• データ収集サービス 
• 多分お高いですw
Xamarin 
Test Cloud 
• UI 自動テストサービス 
• ローカル版はXamarin.UITest, Calabash 
• お高いw
FAQ
FAQ 0 • C# T シャツかっこいい! 
• http://xamarin.com/prebuilt/sharp-shirt か 
らサンプルプロジェクトをダウンロードしてビルドしてくださ 
い。船便でTシャツが届きます!
FAQ 1 • でも、お高いんでしょう? 
• はいw 
• 学生向けの無料ライセンスが発表になりました! 
• 無料のSTARTER というのがあると聞きました 
• http://xamarin.com/starter 
• Mac が必須と聞いたんですが… 
• iOS アプリをビルドするのにXcode が必要なんです。 
• Visual Studio Express でも大丈夫? 
• VS はPro 以上が必要です。 
• Windows ストアアプリも対応してますか? 
• Visual Studio があるじゃない(Mac では無理ゲー)
FAQ 2 • ネイティブで作ったライブラリは使えるの? 
• Binding してXamarin 用dll にする。 
• ネイティブライブラリを組み込んでP/Invoke やJNI 経由 
• iOS Framework をAndroid で、Android のjar を 
iOS では使えません。 
• Xamarin で作ったライブラリはネイティブで使えるの? 
• 使えません。 
• NuGet は使えるの? 
• 使えます。Xamarin 専用のComponentStore もあり 
ます。 
• WinForm やWPF 用のライブラリは使えるの? 
• 基本的には使えないと思います。 
• Prism (Pattern & 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 ラ 
イセンスなのでそのまま使っても大丈夫!
事例
NHK 紅白 
フェンリル株式会社 
http://biz.fenrir-inc.com/application_development/casestudy_app/nhk_kouhaku.html
ルナルナ体温 
ノート 
株式会社エムティー 
アイ様 
http://www.xlsoft.com/jp/products/xamarin/apps_mti.html
戦国RUN 
読売テレビ/シリコ 
ンスタジオ様 
C# ゲームエンジン 
Paradox
評価版 
http://xamarin.com/download
参考資料
デモで使用し 
たサンプル 
• iOS 
• SingleWordKeyboard 
• http://developer.xamarin.com/samples/Single 
WordKeyboard/ 
• Android 
• FindMyPhone 
• http://developer.xamarin.com/samples/FindMy 
PhoneSample/ 
• XMLReading 
• Xamarin.Forms 版 
• http://jp.xlsoft.com/demo2/xamarin/Universal 
XMLReading.zip 
• PCL 版 
• http://jp.xlsoft.com/demo2/xamarin/XMLReadi 
ng.zip
Tasky • PCL 
• https://github.com/xamarin/mobile-samples/ 
tree/master/TaskyPortable 
• Shared Project 
• https://github.com/xamarin/mobile-samples/ 
tree/master/Tasky 
• Xamarin.Forms 
• https://github.com/xamarin/xamarin-forms- 
samples/tree/master/Todo
サンプル・ブロ 
グなど 
• Xamarin.iOS サンプル 
• https://github.com/xamarin/monotouch-samples 
• Xamarin.Android サンプル 
• https://github.com/xamarin/monodroid-samples 
• facebook グループ 
• https://www.facebook.com/groups/xm.jxug/ 
• JXUG サイトリンクページ 
• http://jxug.org/links.html 
• 田淵ブログ 
• http://ytabuchi.hatenablog.com/entry/toc 
• Xamarin ブロググループ 
• http://j.mp/xm-htngrp 
• Qiita Xamarin タグ 
• http://qiita.com/tags/xamarin
Xamarin.For 
ms について 
• Xamarin.Forms 概要 
• http://www.slideshare.net/amay077/xamarinforms 
• 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.Forms 
• 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 統合インストーラーに同梱)
まとめ
Xamarin(ザマリン) 
API 100% 移植 
“ネイティブ” アプリ 
C# / .NET 
コード共通化
“ネイティブ” 
アプリ 
• C# + .NET ランタイム 
• ネイティブUI 
• ネイティブ“パフォーマンス”
iOS 
API 
100% 対応
Android 
API 
100% 対応
Xamarin を 
使用した開発
Xamarin.For 
ms - 画面の 
共通化 
UI “コード”の共通 
化 
ビルド時にネイティブ 
UI にマップ 
XAML で書ける! 
(ただし手動) 
Phone
ご清聴 
ありがとうございます 
ご質問がありましたら、田淵までお気軽にどうぞ 
ytabuchi@xlsoft.com 
080-7015-3586 / 03-5440-7875 
Twitter: @ytabuchi 
Blog: http://ytabuchi.hatenablog.com/

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Xamarinを利用したアプリ開発
Xamarinを利用したアプリ開発Xamarinを利用したアプリ開発
Xamarinを利用したアプリ開発
 
XamarinStudio勉強会 2014/09/08
XamarinStudio勉強会 2014/09/08XamarinStudio勉強会 2014/09/08
XamarinStudio勉強会 2014/09/08
 
Xamarin開発環境の選択
Xamarin開発環境の選択Xamarin開発環境の選択
Xamarin開発環境の選択
 
#VSUG LT #JXUG の紹介
#VSUG LT #JXUG の紹介#VSUG LT #JXUG の紹介
#VSUG LT #JXUG の紹介
 
5分で(は終わらなかった)分かるXamarin(開発者向け)
5分で(は終わらなかった)分かるXamarin(開発者向け)5分で(は終わらなかった)分かるXamarin(開発者向け)
5分で(は終わらなかった)分かるXamarin(開発者向け)
 
Xamarinとmvvm crossとf#と
Xamarinとmvvm crossとf#とXamarinとmvvm crossとf#と
Xamarinとmvvm crossとf#と
 
Xamarin を使うとどんなことができるの?
Xamarin を使うとどんなことができるの?Xamarin を使うとどんなことができるの?
Xamarin を使うとどんなことができるの?
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
インフラジスティックスおよび Xamarin.Forms コントロールのご紹介
インフラジスティックスおよび Xamarin.Forms コントロールのご紹介インフラジスティックスおよび Xamarin.Forms コントロールのご紹介
インフラジスティックスおよび Xamarin.Forms コントロールのご紹介
 
Xamarin 社内勉強会の LT 資料
Xamarin 社内勉強会の LT 資料Xamarin 社内勉強会の LT 資料
Xamarin 社内勉強会の LT 資料
 
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
 
Xamarin Native vs Xamarin Forms
Xamarin Native vs Xamarin FormsXamarin Native vs Xamarin Forms
Xamarin Native vs Xamarin Forms
 
2016.10.15アプリ発表会
2016.10.15アプリ発表会2016.10.15アプリ発表会
2016.10.15アプリ発表会
 
10分で分かるxamarin
10分で分かるxamarin10分で分かるxamarin
10分で分かるxamarin
 
Xamarin 実戦投入時の留意点再確認
Xamarin 実戦投入時の留意点再確認Xamarin 実戦投入時の留意点再確認
Xamarin 実戦投入時の留意点再確認
 
Xamarinの歩き方
Xamarinの歩き方Xamarinの歩き方
Xamarinの歩き方
 
Prism.Formsについて
Prism.FormsについてPrism.Formsについて
Prism.Formsについて
 
Xamarin 概要 @ 2015/1/29 CROSS 2015
Xamarin 概要 @ 2015/1/29 CROSS 2015Xamarin 概要 @ 2015/1/29 CROSS 2015
Xamarin 概要 @ 2015/1/29 CROSS 2015
 
JXUGC #9 Xamarin.Forms Mvvm Teachathon
JXUGC #9 Xamarin.Forms Mvvm TeachathonJXUGC #9 Xamarin.Forms Mvvm Teachathon
JXUGC #9 Xamarin.Forms Mvvm Teachathon
 
Xamarin 実戦投入時に気をつけたいことあれこれ
Xamarin 実戦投入時に気をつけたいことあれこれXamarin 実戦投入時に気をつけたいことあれこれ
Xamarin 実戦投入時に気をつけたいことあれこれ
 

Similar a Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編

20120316 designerworkshoppublished
20120316 designerworkshoppublished20120316 designerworkshoppublished
20120316 designerworkshoppublished
Yoichiro Sakurai
 
これからのNOTESモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れこれからのNOTESモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れ
Mitsuru Katoh
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
Yoichiro Sakurai
 
できる!スマホアプリ:Webからはじまるアプリ
できる!スマホアプリ:Webからはじまるアプリできる!スマホアプリ:Webからはじまるアプリ
できる!スマホアプリ:Webからはじまるアプリ
Masami Yabushita
 

Similar a Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編 (20)

第1回 Japan Xamarin User Group Conference - Xamarin 概要
第1回 Japan Xamarin User Group Conference - Xamarin 概要第1回 Japan Xamarin User Group Conference - Xamarin 概要
第1回 Japan Xamarin User Group Conference - Xamarin 概要
 
Xamarin 概要 2014年08月版
Xamarin 概要 2014年08月版Xamarin 概要 2014年08月版
Xamarin 概要 2014年08月版
 
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
これから始めるXamarin開発
これから始めるXamarin開発これから始めるXamarin開発
これから始めるXamarin開発
 
Xamarin.iOS
Xamarin.iOSXamarin.iOS
Xamarin.iOS
 
20120316 designerworkshoppublished
20120316 designerworkshoppublished20120316 designerworkshoppublished
20120316 designerworkshoppublished
 
JXUGC 13 東京 はじめに
JXUGC 13 東京 はじめにJXUGC 13 東京 はじめに
JXUGC 13 東京 はじめに
 
できる!スマホアプリ:Webからはじまるアプリ for CMU16
できる!スマホアプリ:Webからはじまるアプリ for CMU16できる!スマホアプリ:Webからはじまるアプリ for CMU16
できる!スマホアプリ:Webからはじまるアプリ for CMU16
 
これからのNOTESモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れこれからのNOTESモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れ
 
Xamarin Overview
Xamarin Overview Xamarin Overview
Xamarin Overview
 
Xamarin Overview
Xamarin Overview Xamarin Overview
Xamarin Overview
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
 
WPF開発者がXamarin.Macを触るその前に
WPF開発者がXamarin.Macを触るその前にWPF開発者がXamarin.Macを触るその前に
WPF開発者がXamarin.Macを触るその前に
 
できる!スマホアプリ:Webからはじまるアプリ
できる!スマホアプリ:Webからはじまるアプリできる!スマホアプリ:Webからはじまるアプリ
できる!スマホアプリ:Webからはじまるアプリ
 
Windows アプリケーション開発 はじめに ~ Windows アプリケーション開発初学者の方向け Visual Studio を使ったアプリケーショ...
Windows アプリケーション開発はじめに ~ Windows アプリケーション開発初学者の方向けVisual Studio を使ったアプリケーショ...Windows アプリケーション開発はじめに ~ Windows アプリケーション開発初学者の方向けVisual Studio を使ったアプリケーショ...
Windows アプリケーション開発 はじめに ~ Windows アプリケーション開発初学者の方向け Visual Studio を使ったアプリケーショ...
 
Phone gap + monaca
Phone gap + monacaPhone gap + monaca
Phone gap + monaca
 
NET MAUI for .NET 7 for iOS, Android app development
 NET MAUI for .NET 7 for iOS, Android app development  NET MAUI for .NET 7 for iOS, Android app development
NET MAUI for .NET 7 for iOS, Android app development
 
Xamarin.Forms概要
Xamarin.Forms概要Xamarin.Forms概要
Xamarin.Forms概要
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
 

Más de Yoshito Tabuchi

Más de Yoshito Tabuchi (20)

Kong Summit 2021 振り返り
Kong Summit 2021 振り返りKong Summit 2021 振り返り
Kong Summit 2021 振り返り
 
Kong 概要
Kong 概要Kong 概要
Kong 概要
 
勉強会参加のススメ
勉強会参加のススメ勉強会参加のススメ
勉強会参加のススメ
 
Kong Enterprise の紹介
Kong Enterprise の紹介Kong Enterprise の紹介
Kong Enterprise の紹介
 
How does a sales person grow up his community
How does a sales person grow up his communityHow does a sales person grow up his community
How does a sales person grow up his community
 
C# と Xamarin
C# と XamarinC# と Xamarin
C# と Xamarin
 
Xamarin で Cognitive Services を使う
Xamarin で Cognitive Services を使うXamarin で Cognitive Services を使う
Xamarin で Cognitive Services を使う
 
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の歩き方
 
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 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編

  • 1. はじめに・ Xamarin 概要 2014/11/8 第2回Japan Xamarin User Group Conference 西日本編 エクセルソフト株式会社 Business Development Manager 田淵義人 ytabuchi@xlsoft.com 03-5440-7875 / 080-7015-3586
  • 2. JXUGのご紹 介 • サイト • http://jxug.org • Japan Xamarin User Group (JXUG) • 読み方ェ… • コミュニティ概要 • JXUG は2014/2/18 に発足したXamarin を愛する方のコ ミュニティです。 • 初心者の方が参加しやすく、上級者の方も気軽に情報交換でき る場に出来ればいいなと考えています。 • 活動場所 • http://www.facebook.com/groups/xm.jxug • Twitter タグ • #JXUG • 運営メンバー • 絶賛募集中です! • 手伝える方はxm.jxug@gmail.com まで
  • 3. facebook グループへのご参加お 待ちしております。後、ロゴというか キャラクターが必要だと思うんです よー?JXUG のロゴ書いて頂ける 方も募集中です。
  • 4. 本セッションのゴール • Xamarin についてイメージを掴んでいただくこと • 出来ること出来ないことをご理解いただくこと • Xamarin に興味を持っていただくこと お知らせ • 今日のスライド • アンケートにご協力ください。 • http://j.mp/jxugc2w-enq
  • 5. 自己紹介• 田淵義人 • エクセルソフトのXamarin 担当。非開発者。 • Xamarin でググれ • Twitter, SNS, Web, HTML5/CSS/JS, モバ イル/ガジェット, Web マーケティングなどが好き • Twitter: @ytabuchi • Blog: http://ytabuchi.hatenablog.com/
  • 6. 自己紹介• 田淵義人 • エクセルソフトのXamarin 担当。開発者になりたい。 • Xamarin でググれ(と言ってみたいw) • Twitter, SNS, Web, HTML5/CSS/JS, モバ イル/ガジェット, Web マーケティングなどが好き • Twitter: @ytabuchi • Blog: http://ytabuchi.hatenablog.com/
  • 8. アンケート• Xamarin 知ってますか? • Xamarin 触ってみた方は? • 開発環境は? (Windows / Mac) • モバイル開発経験は? • 個人として?業務として?
  • 12. 何を使えばい いの? • ネイティブ(Objective-C/Swift, Java) • Xcode, Android Studio/eclipse • HTML5, CSS3, JS • Cordova (PhoneGAP, Monaca) • Sencha Touch • C++/Delphi • RAD Studio XE/Appmethod • JS • Titanium • ActionScript • Flash/AIR
  • 13. ハイブリッド開 発 共通化による最小 限の機能 分厚いラッパー リリースまでの日数 適切なUX かどう か? App Generation
  • 14. Xamarin(ザマリン) ・C# / .NET / Visual Studio ・“ネイティブ” アプリ ・コード共通化 ・API 100% 移植
  • 16. C# で開発• 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;
  • 17.
  • 18.
  • 20. “ネイティブ” アプリ • .NET ランタイム • ネイティブUI / UX • ネイティブ“パフォーマンス”
  • 21. Mono Miguel de Icaza (ミゲル・デ・イカザ1972年- ) : GNOME、Mono の開発者 1999年ミゲル氏、Helix Code 設立 2001年6月Helix Code をXimian(ジミアン) に社名変更し、Mono プロジェクト開始 2001年7月Mono OSS 化 2003年8月Novell がXimian を買収。ミゲル氏はNovell 開発部門 のバイスプレジデントに就任 2004年6月Mono 1.0 リリース 2011年4月Attachmate のNovell 買収に伴い、Mono 開発者のレ イオフ実施 2011年5月Xamarin 設立 2011年7月Novell からXamarin にMono, MonoTouch, Mono for Android などが譲渡される 2013年2月Xamarin 2.0 リリース 2014年5月Xamarin 3.0 リリース ミゲル・デ・イカザ(Wiki) http://j.mp/1p8kRjF | Mono (Wiki) http://j.mp/1vxsP5L
  • 23. iOS API 100% 対応
  • 25. Xamarin.An droid http://www.bui ldinsider.net/m obile/insidexam arin/07
  • 26. DEMO
  • 28. .NET BCL (Mono) • System.IO • ファイル操作の共通化 • System.NET • ネットワーク操作の共通化 • System.Linq • データ操作の簡素化、共通化 • System.XML • XML 操作の簡素化、共通化 • System.Threading • 上記全般もですが、非同期処理の恩恵
  • 30. 共有方法• PCL • Visual Studio 2012 / Xamarin Studio 4.2 (要追 加ライブラリ) • PCL (Portable Class Library) - Xamarin 3 の新し いコード共有テクニック: XLsoft エクセルソフト • http://www.xlsoft.com/jp/products/xamarin/port able_class_libraries.html • Shared Project • Visual Studio 2013 Update 2 / Xamarin Studio 5.0 • Shared Project - Xamarin 3 の新しいコード共有テク ニック: XLsoft エクセルソフト • http://www.xlsoft.com/jp/products/xamarin/shar ed_projects.html • Xamarin.Forms • 後述
  • 31. PCL Windows RT iOS Android
  • 33. Xamarin.For ms - 画面の 共通化 UI “コード”の共通 化 ビルド時にネイティブ UI にマップ XAML で書ける! (ただし手動) Phone
  • 35. API 100% 移植 • Xamarin.iOS • iOS 8.1 対応済み • iOS SDK リリースと同日 • 次期iOS SDK Beta とXamarin.iOS Alpha/Beta で時期iOS 対応アプリを開発可能 • Xamarin はiOS 8 に完全対応- Xamarin で iOS 8 をさらに素晴らしく(紹介記事) • Xamarin.Android • Android L Preview, Android wear は対応済み • Lollipop API 21 は2014/11/7 時点では未対応 • 今までは1ヶ月~3ヶ月程してリリース • Android L Developer Preview / Android Wear をサポート(紹介記事)
  • 36. DEMO
  • 38. Xamarin Android Player • Virtual Box ベースの高速Android エミュレー ター • http://yutawatanabe.hatenablog.com/entr y/xamarin-android-player-preview-install
  • 39. Sketches • iOS, Forms などのリアルタイム実行環境 • http://qiita.com/ytabuchi/items/22b616d7 558b41b4726c • https://www.youtube.com/watch?v=v9vE hwomUEY&t=19m0s 最新のYosemite 10.10 / Xcode 6.1 / Xamarin Studio 5.6.2 (Alpha)で動かな い… 辛み…
  • 40. Xamarin Profiler • 解析ツール • 未調査… すみません…
  • 41. Xamarin Insights • データ収集サービス • 多分お高いですw
  • 42. Xamarin Test Cloud • UI 自動テストサービス • ローカル版はXamarin.UITest, Calabash • お高いw
  • 43. FAQ
  • 44. FAQ 0 • C# T シャツかっこいい! • http://xamarin.com/prebuilt/sharp-shirt か らサンプルプロジェクトをダウンロードしてビルドしてくださ い。船便でTシャツが届きます!
  • 45. FAQ 1 • でも、お高いんでしょう? • はいw • 学生向けの無料ライセンスが発表になりました! • 無料のSTARTER というのがあると聞きました • http://xamarin.com/starter • Mac が必須と聞いたんですが… • iOS アプリをビルドするのにXcode が必要なんです。 • Visual Studio Express でも大丈夫? • VS はPro 以上が必要です。 • Windows ストアアプリも対応してますか? • Visual Studio があるじゃない(Mac では無理ゲー)
  • 46. FAQ 2 • ネイティブで作ったライブラリは使えるの? • Binding してXamarin 用dll にする。 • ネイティブライブラリを組み込んでP/Invoke やJNI 経由 • iOS Framework をAndroid で、Android のjar を iOS では使えません。 • Xamarin で作ったライブラリはネイティブで使えるの? • 使えません。 • NuGet は使えるの? • 使えます。Xamarin 専用のComponentStore もあり ます。 • WinForm やWPF 用のライブラリは使えるの? • 基本的には使えないと思います。 • Prism (Pattern & Practice 製のMvvm フレームワー ク) はPCL 化されているのでXamarin でも使えます。
  • 47. FAQ 3 • ソース一回書けばいいと思ってた • ネイティブの知識も必要ですぜ… 旦那…? • どれくらい共通化できるの? • 30%~60% くらいかと思います。 • OS 毎に開発するのは? • UI を定義する部分 • OS 固有の機能を実装する部分 • 共通化できるのは? • ロジック(データベースへのアクセス、通信処理など) 部 分 • 定義したUI に対してデータのやり取りをする部分 • Xamarin.Forms を使用するとベーシックなUI は共 通化できます。
  • 48. FAQ 4 • 共有化はどうやってやるの? • Universal App (Shared Project) • PCL (Portable Class Library) • Profile に注意 • リンク参照 • MvvmCross などのフレーム ワーク
  • 49. FAQ 5 • 日本語の資料ってあるの? • ・・・ • 鋭意努力します! >< • 英語ドキュメントはXamarin が山のように用意してい ますので、ぜひご覧ください。 • サンプルが欲しいんですが? • Xamarin が山のように(ry なお、Apache 2.0 ラ イセンスなのでそのまま使っても大丈夫!
  • 51. NHK 紅白 フェンリル株式会社 http://biz.fenrir-inc.com/application_development/casestudy_app/nhk_kouhaku.html
  • 52. ルナルナ体温 ノート 株式会社エムティー アイ様 http://www.xlsoft.com/jp/products/xamarin/apps_mti.html
  • 56. デモで使用し たサンプル • iOS • SingleWordKeyboard • http://developer.xamarin.com/samples/Single WordKeyboard/ • Android • FindMyPhone • http://developer.xamarin.com/samples/FindMy PhoneSample/ • XMLReading • Xamarin.Forms 版 • http://jp.xlsoft.com/demo2/xamarin/Universal XMLReading.zip • PCL 版 • http://jp.xlsoft.com/demo2/xamarin/XMLReadi ng.zip
  • 57. Tasky • PCL • https://github.com/xamarin/mobile-samples/ tree/master/TaskyPortable • Shared Project • https://github.com/xamarin/mobile-samples/ tree/master/Tasky • Xamarin.Forms • https://github.com/xamarin/xamarin-forms- samples/tree/master/Todo
  • 58. サンプル・ブロ グなど • Xamarin.iOS サンプル • https://github.com/xamarin/monotouch-samples • Xamarin.Android サンプル • https://github.com/xamarin/monodroid-samples • facebook グループ • https://www.facebook.com/groups/xm.jxug/ • JXUG サイトリンクページ • http://jxug.org/links.html • 田淵ブログ • http://ytabuchi.hatenablog.com/entry/toc • Xamarin ブロググループ • http://j.mp/xm-htngrp • Qiita Xamarin タグ • http://qiita.com/tags/xamarin
  • 59. Xamarin.For ms について • Xamarin.Forms 概要 • http://www.slideshare.net/amay077/xamarinforms • 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.Forms • 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
  • 60. 開発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 統合インストーラーに同梱)
  • 62. Xamarin(ザマリン) API 100% 移植 “ネイティブ” アプリ C# / .NET コード共通化
  • 63. “ネイティブ” アプリ • C# + .NET ランタイム • ネイティブUI • ネイティブ“パフォーマンス”
  • 64. iOS API 100% 対応
  • 67. Xamarin.For ms - 画面の 共通化 UI “コード”の共通 化 ビルド時にネイティブ UI にマップ XAML で書ける! (ただし手動) Phone
  • 68. ご清聴 ありがとうございます ご質問がありましたら、田淵までお気軽にどうぞ ytabuchi@xlsoft.com 080-7015-3586 / 03-5440-7875 Twitter: @ytabuchi Blog: http://ytabuchi.hatenablog.com/