Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Hironov OKUYAMA
10,557 views
Xamarin によるクロスプラットフォームモバイルアプリ開発
うずらインキュベータ - http://atnd.org/events/47898 で発表した資料です。
Technology
◦
Read more
16
Save
Share
Embed
Embed presentation
Download
Downloaded 37 times
1
/ 48
2
/ 48
3
/ 48
4
/ 48
5
/ 48
6
/ 48
7
/ 48
8
/ 48
9
/ 48
10
/ 48
11
/ 48
12
/ 48
13
/ 48
14
/ 48
15
/ 48
16
/ 48
17
/ 48
18
/ 48
19
/ 48
20
/ 48
21
/ 48
22
/ 48
23
/ 48
24
/ 48
25
/ 48
26
/ 48
27
/ 48
28
/ 48
29
/ 48
30
/ 48
31
/ 48
32
/ 48
33
/ 48
34
/ 48
35
/ 48
36
/ 48
37
/ 48
38
/ 48
39
/ 48
40
/ 48
41
/ 48
42
/ 48
43
/ 48
44
/ 48
45
/ 48
46
/ 48
47
/ 48
48
/ 48
More Related Content
PDF
Xamarin.Forms概要
by
Hironov OKUYAMA
PDF
この辺でXamarin導入による 効果と限界をしっかり把握してみよう MVP Community Camp 2015
by
Shinichi Hirauchi
PDF
Xamarin によるクロスプラットフォームモバイルアプリ開発(2014.06)
by
Hironov OKUYAMA
PDF
Xamarin 基礎講座
by
Yoshito Tabuchi
PPTX
Xamarin Overview
by
Madoka Chiyoda
PDF
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
by
Yoshito Tabuchi
PPTX
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
by
Fujio Kojima
PPTX
Xamarin基礎講座 Xamarinハンズオン(2016.09 浜松) #JXUG #jaghama
by
Hironov OKUYAMA
Xamarin.Forms概要
by
Hironov OKUYAMA
この辺でXamarin導入による 効果と限界をしっかり把握してみよう MVP Community Camp 2015
by
Shinichi Hirauchi
Xamarin によるクロスプラットフォームモバイルアプリ開発(2014.06)
by
Hironov OKUYAMA
Xamarin 基礎講座
by
Yoshito Tabuchi
Xamarin Overview
by
Madoka Chiyoda
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
by
Yoshito Tabuchi
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
by
Fujio Kojima
Xamarin基礎講座 Xamarinハンズオン(2016.09 浜松) #JXUG #jaghama
by
Hironov OKUYAMA
What's hot
PDF
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
by
Yoshito Tabuchi
PDF
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
by
Yoshito Tabuchi
PDF
Xamarinをこれから始める皆様へ
by
Yoshito Tabuchi
PDF
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
by
irgaly
PDF
Visual Studio + xamarin で始めるモバイル アプリ開発
by
インフラジスティックス・ジャパン株式会社
PDF
Xamarinの概要
by
Developer Solutions事業部 メシウス株式会社 (旧グレープシティ株式会社)
PDF
Xamarin 概要 2014年08月版
by
Yoshito Tabuchi
PDF
Xamarin概要と活用方法
by
Yoshito Tabuchi
PDF
Xamarin概要と活用方法
by
Yoshito Tabuchi
PPTX
第1回 Japan Xamarin User Group Conference - Xamarin 概要
by
Yoshito Tabuchi
PDF
Xamarin 概要 2015年5月版
by
Yoshito Tabuchi
PDF
Realm Mobile Platform 概要
by
Yoshito Tabuchi
PDF
Xamarin で今日から始めるクロスプラットフォーム開発
by
友太 渡辺
PDF
20171202 Xamarinの歩き方
by
Yoshito Tabuchi
PDF
Xamarin 基礎講座 2016年7月版
by
Yoshito Tabuchi
PPTX
Xamarin の救世主 Unity !
by
Tatsuji Kuroyanagi
PDF
Xamarin × Visual Studio Updates
by
友太 渡辺
PDF
#VSUG LT #JXUG の紹介
by
Yoshito Tabuchi
PDF
BlueMonkeyプロジェクトのご紹介
by
Yoshito Tabuchi
PPTX
Xamarin.formsとカスタムコントロールの話
by
Masuda Tomoaki
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
by
Yoshito Tabuchi
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
by
Yoshito Tabuchi
Xamarinをこれから始める皆様へ
by
Yoshito Tabuchi
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
by
irgaly
Visual Studio + xamarin で始めるモバイル アプリ開発
by
インフラジスティックス・ジャパン株式会社
Xamarinの概要
by
Developer Solutions事業部 メシウス株式会社 (旧グレープシティ株式会社)
Xamarin 概要 2014年08月版
by
Yoshito Tabuchi
Xamarin概要と活用方法
by
Yoshito Tabuchi
Xamarin概要と活用方法
by
Yoshito Tabuchi
第1回 Japan Xamarin User Group Conference - Xamarin 概要
by
Yoshito Tabuchi
Xamarin 概要 2015年5月版
by
Yoshito Tabuchi
Realm Mobile Platform 概要
by
Yoshito Tabuchi
Xamarin で今日から始めるクロスプラットフォーム開発
by
友太 渡辺
20171202 Xamarinの歩き方
by
Yoshito Tabuchi
Xamarin 基礎講座 2016年7月版
by
Yoshito Tabuchi
Xamarin の救世主 Unity !
by
Tatsuji Kuroyanagi
Xamarin × Visual Studio Updates
by
友太 渡辺
#VSUG LT #JXUG の紹介
by
Yoshito Tabuchi
BlueMonkeyプロジェクトのご紹介
by
Yoshito Tabuchi
Xamarin.formsとカスタムコントロールの話
by
Masuda Tomoaki
Viewers also liked
PDF
Xamarin で ReactiveUI を使ってみた
by
Hironov OKUYAMA
PPTX
ゆるふわ Xamarin Tips
by
Daiki Kawanuma
PPTX
Xamarinで作る「オリジナルタイル地図」アプリ
by
Kohei Otsuka
PDF
Microsoft Edgeでサポートされる新しい API について
by
Osamu Monoe
PDF
Xamarin.forms入門
by
一希 大田
PDF
XAML入門
by
一希 大田
PDF
JXUGC 13 東京 はじめに
by
Yoshito Tabuchi
PPTX
Xamarin & Google Maps SDKでクロスプラットフォーム地図アプリ
by
Kohei Otsuka
PDF
続Xamarinはじめました
by
Yuya Yamaki
PPTX
Xamarinは辛いよ
by
Takkiiii
PPTX
かけ算で使いこなす Xamarin
by
Tatsuji Kuroyanagi
PPTX
Enterpriseから見たXamarinの可能性
by
Atsushi Nakamura
PDF
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
by
Yoshito Tabuchi
PDF
Windows10時代のクロスプラットフォーム開発
by
Kazushi Kamegawa
PPTX
Xamarin.Formsで鉄道模型を制御してみた
by
ayasehiro
PPTX
Xamarin入門(技術というより心構え編)
by
Makoto Nishimura
PDF
Windows 10 の あたらしい Web ブラウザー について
by
Osamu Monoe
PPTX
2016年11月.NETラボLT:超余談ゲームプラットフォームの話
by
Makoto Nishimura
PDF
Jxugc#22 lt古川
by
F. Syam
PDF
カメラアプリ開発入門3
by
Takashi Ohtsuka
Xamarin で ReactiveUI を使ってみた
by
Hironov OKUYAMA
ゆるふわ Xamarin Tips
by
Daiki Kawanuma
Xamarinで作る「オリジナルタイル地図」アプリ
by
Kohei Otsuka
Microsoft Edgeでサポートされる新しい API について
by
Osamu Monoe
Xamarin.forms入門
by
一希 大田
XAML入門
by
一希 大田
JXUGC 13 東京 はじめに
by
Yoshito Tabuchi
Xamarin & Google Maps SDKでクロスプラットフォーム地図アプリ
by
Kohei Otsuka
続Xamarinはじめました
by
Yuya Yamaki
Xamarinは辛いよ
by
Takkiiii
かけ算で使いこなす Xamarin
by
Tatsuji Kuroyanagi
Enterpriseから見たXamarinの可能性
by
Atsushi Nakamura
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
by
Yoshito Tabuchi
Windows10時代のクロスプラットフォーム開発
by
Kazushi Kamegawa
Xamarin.Formsで鉄道模型を制御してみた
by
ayasehiro
Xamarin入門(技術というより心構え編)
by
Makoto Nishimura
Windows 10 の あたらしい Web ブラウザー について
by
Osamu Monoe
2016年11月.NETラボLT:超余談ゲームプラットフォームの話
by
Makoto Nishimura
Jxugc#22 lt古川
by
F. Syam
カメラアプリ開発入門3
by
Takashi Ohtsuka
Similar to Xamarin によるクロスプラットフォームモバイルアプリ開発
PDF
Xamarin を使うとどんなことができるの?
by
Yoshito Tabuchi
PPTX
Xamarin.iOS/android+F#で作る関数型アプリ
by
Masuda Tomoaki
PDF
Xamarin 紹介:Windows Phone / iOS / Android アプリ同時開発のススメ 2015/8/20 版
by
Yoshito Tabuchi
PDF
Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編
by
Yoshito Tabuchi
PDF
Xamarin 概要 @ 2014/10/18 わんくま同盟 東京勉強会 #92
by
Yoshito Tabuchi
PDF
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
by
Yoshito Tabuchi
PPTX
Xamarin Overview
by
まどか 千代田
PPTX
つぶLT20121215
by
遼一 杉浦
PDF
App010 【xamarin 開発の真実】
by
Tech Summit 2016
PPTX
App010 【xamarin 開発の真実】
by
Tech Summit 2016
PDF
Xamarin 概要 2017/01/15
by
Yoshito Tabuchi
PDF
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
by
Yoshito Tabuchi
PDF
XamarinStudio勉強会 2014/09/08
by
孝文 田村
PDF
Xamarin.iOS
by
Kosuke Usami
PDF
Xamarinでアプリを作ったときのエトセトラ
by
Akira Hatsune
PDF
Xamarin バッドノウハウ大全
by
Yoshito Tabuchi
PPTX
Developers.io.札幌 xamarinってどうよ
by
Shinichi Hirauchi
PPTX
Xamarin で始めるクロスプラットフォーム開発
by
m ishizaki
PPTX
Xamarin
by
takeuchi-tk
PPTX
Xamarin 101 ~環境構築からビルド・テストまで~
by
Masaki Takeda
Xamarin を使うとどんなことができるの?
by
Yoshito Tabuchi
Xamarin.iOS/android+F#で作る関数型アプリ
by
Masuda Tomoaki
Xamarin 紹介:Windows Phone / iOS / Android アプリ同時開発のススメ 2015/8/20 版
by
Yoshito Tabuchi
Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編
by
Yoshito Tabuchi
Xamarin 概要 @ 2014/10/18 わんくま同盟 東京勉強会 #92
by
Yoshito Tabuchi
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
by
Yoshito Tabuchi
Xamarin Overview
by
まどか 千代田
つぶLT20121215
by
遼一 杉浦
App010 【xamarin 開発の真実】
by
Tech Summit 2016
App010 【xamarin 開発の真実】
by
Tech Summit 2016
Xamarin 概要 2017/01/15
by
Yoshito Tabuchi
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
by
Yoshito Tabuchi
XamarinStudio勉強会 2014/09/08
by
孝文 田村
Xamarin.iOS
by
Kosuke Usami
Xamarinでアプリを作ったときのエトセトラ
by
Akira Hatsune
Xamarin バッドノウハウ大全
by
Yoshito Tabuchi
Developers.io.札幌 xamarinってどうよ
by
Shinichi Hirauchi
Xamarin で始めるクロスプラットフォーム開発
by
m ishizaki
Xamarin
by
takeuchi-tk
Xamarin 101 ~環境構築からビルド・テストまで~
by
Masaki Takeda
More from Hironov OKUYAMA
PDF
給食献立×オープンデータでアレルギー事故を防ぐ
by
Hironov OKUYAMA
KEY
HexRinger と FOSS4G の紆余曲折
by
Hironov OKUYAMA
PDF
HexRinger needs GeoHex #gms2012
by
Hironov OKUYAMA
KEY
HexRinger
by
Hironov OKUYAMA
KEY
HexRinger for 2011.5.14 #jaghama
by
Hironov OKUYAMA
KEY
AdMob やってみた for 2011.7.9 #jaghama #3
by
Hironov OKUYAMA
PPTX
Xamarin advent calendar 2016 参加者募集
by
Hironov OKUYAMA
給食献立×オープンデータでアレルギー事故を防ぐ
by
Hironov OKUYAMA
HexRinger と FOSS4G の紆余曲折
by
Hironov OKUYAMA
HexRinger needs GeoHex #gms2012
by
Hironov OKUYAMA
HexRinger
by
Hironov OKUYAMA
HexRinger for 2011.5.14 #jaghama
by
Hironov OKUYAMA
AdMob やってみた for 2011.7.9 #jaghama #3
by
Hironov OKUYAMA
Xamarin advent calendar 2016 参加者募集
by
Hironov OKUYAMA
Xamarin によるクロスプラットフォームモバイルアプリ開発
1.
Xamarin による クロスプラットフォーム モバイルアプリ開発 2014.2.26 うずらインキュベータ
#1 in Toyohashi, Aichi
2.
自己紹介 • Twitter: @amay077 • 位置情報エンジニア、 モバイルアプリエンジニア、 etc • MapQuest.co.jp →
Cosmoroot,Inc(Nagoya) 2 Now Hot topics 地図, 位置情報, オープンデータ, C#, Android, iOS, Xamarin
3.
クラウドサービスプロバイダ • (ロジネビュラ) • • (ジクウ) • • 千年先まで費用ゼロのクラウド型倉庫管理システム おもにココ担当 リアルタイムデータ収集プラットフォーム Nepula(ネプラ) • 基幹業務システム向けPaaS 3
4.
ref http://blog.airs.co.jp/2010/12/06/hamackathon-20101204.html HexRinger developed at ハマッカソン
#2 4
5.
続きは… 位置情報系Androidアプリケーションの開発 -
Togetterまとめ しゃべPOI developed for OpenStreetMappers 5
6.
ref シビックハックの広まりと地方エンジニアの躍進 ‒
MA9総括 ¦ finder 富士フォト with ふじのくにオープンデータ MashupAward9, アーバンデータチャレンジ東京2013 6
7.
本題 7
8.
Xamarin とはなんぞや? • 「ざまりん」と読みます • .NET Framework
のオープンソース実装である 「Mono」を作ってる人たちが作った企業の名前 • 及び、同社が提供するSDKやツールなどをひっ くるめた総称 8
9.
ひとことで言えば .NET(C#)で、Android/iOS/Mac/ Window アプリを開発できるSDK 9
10.
もうちょっと詳しく1 • Xamarin.iOS(旧MonoTouch) Xamarin.Android(旧MonoDroid) Xamarin.Mac(MonoMac) • 各プラットフォーム(PF)のMono実装 +各PFのAPIの 薄い ラッパー • いずれもOSSではなく、有償のプロダクト (MonoMacはOSS、ただしGPL/LGPL) 10
11.
もうちょっと詳しく2 • Xamarin Studio(旧MonoDevelop) • • • Win/Mac/Linux で動作するOSSな統合開発環境(IDE) モバイル開発以外でも使われる(ってか、そっちが主) Visual
Studio アドイン • iOS/Android開発を実現するためのアドイン • Xamarin BUSINESSエディション以上が必要 11
12.
価格体系 ref https://store.xamarin.com/ 「/年/PF/開発者」である事に注意!(更新せずに使い続けてもOK) 学割あります(BUSINESS版が $99!!) 12
13.
使われてるの? 530,000 developers in
worldwide ref http://xamarin.com/apps 13
14.
日本でも ref フェンリル株式会社 ¦
スマートフォンアプリ開発 実績 NHK 紅白 14
15.
Microsoftと提携! ref http://xamarin.com/msdn • Portable Class
Library が Xamarin.iOS, Xamarin.Android にも対応 • MSDNサブスクライバー向け特別価格 Xamarin.iOS,Android BUSINESS版が30%OFF 15
16.
Win+Visual Studio で作る? • iOS
開発の為に Mac が必要 • • iOS開発でUIデザイナ(Interface Builder)が使えない • • リモート接続してビルド&デバッグ Xamarin.Android には UIデザイナあります インストールや日本語入力が不安定との も ↓ Mac + Xamarin Studio での開発が 現在のベストプラクティス(個人の見解です) 16
17.
Xamarin とは(もう一度) 各PFのMono実装 + 各PFのAPIの 薄い
ラッパー 17
18.
Xamarin.Android の実行モデル Android(標準) Xamarin.Android アプリケーション(Java) アプリケーション(C#) アプリケーションフレー ムワーク(Java) アプリケーションフレー JavaSE6 ムワーク(.NET) .NET4.5 BCL VM(Dalvik) Monoランタイム コアライブラリ群 コアライブラリ群 Linux
カーネル Linux カーネル どちらも中間言語を ランタイムがJITコンパイルして実行 18
19.
Xamarin.iOS の実行モデル iOS(標準) Xamarin.iOS アプリケーション(C#) CocoaTouch(.NET) アプリケーション(Objective-C) .NET4.5 BCL CocoaTouch CocoaTouch コアライブラリ群 コアライブラリ群 LLVMコンパイラ Mono
AOTコンパイラ ARMマシン語 ARMマシン語 ARM ARM 実機 実機 19
20.
利点と欠点 • Xamarin.Android • • • ◎:Microsoftと仲が良い <GoogleはOracleと仲悪い(まだJava6)> △:Monoランタイムをアプリに含めるためサイズが 増加 Xamarin.iOS • ◎:ガベージコレクション、静的型付け • △:事前コンパイル(AOT)の為、使えない機能(動的 コード生成等)がある 20
21.
「薄いラッパ」である事の利点 • PFのバージョンアップに追従しやすい • 厚いラッパ(=共通API)では、複数PFで整合性を 取らないといけないので時間がかかる • PF固有の開発経験が活かせる • 潰しが利く(=PF固有の開発に戻りやすい) • 使い方が変わってしまう厚いラッパでは、戻る のは難しい 21
22.
DEMO Xamarin.Android と iOS
で HelloWorld 22
23.
クロスプラット フォームで開発するには 23
24.
どこが共通化できるの?1 共通化できるところ (基本ライブラリ相当機能) 共通化できないところ (PF固有の機能) • 基本データ型、計算処理 • 画面 • 通信処理 • センサー系(GPS、加速度等) • ストリームI/O • カメラやアドレス帳 • 非同期処理 • アプリ間連携 24
25.
どこが共通化できるの?2 PCL(Portable Class Library) アプリ(C#) アプリケーションフレー ムワーク(.NET) ここは共通化できる .NET4.5
BCL .NET4.5 BCL Monoランタイム アプリ(C#) _ CocoaTouch (.NET) CocoaTouch Androidコアライブラリ群 iOSコアライブラリ群 Xamarin.Android Xamarin.iOS 25
26.
そして PCL へ • PF間で共有できる「ポータブ ル」なクラスライブラリ • 実際には、対応PFセット毎にプ ロファイルが定義されている • Xamarin.Android/iOS
も対応 WPF/Win8/Android/iOS に1ソース (というか1バイナリ)で対応できる 26
27.
DEMO PCL をつくって Xamarin.Android と
iOS から使ってみる 27
28.
既存資産の活用1 • Xamarin.Android Java Binding • • • Java
ライブラリ(.jar)を利用可 .NET API は .jar から自動生成+カスタマイズ Xamarin.iOS Obj-C Binding • Obj-C の Static Library(.a)を利用可 • .NET API を自分で定義する必要あり • 補助ツール - Objective Sharpie • Java Binding より結構大変 28
29.
既存資産の活用2 • 既存の.NET資産もある程度 使える(PCLでなくても) • .NET Mobility Scanner
で どの程度利用できるか調べ る事ができる • http:// scan.xamarin.com/ 29
30.
既存資産の活用3 • Xamarin Components • • Xamarinで利用できるライブラリのマーケット Nuget • • • .NET 向けのパッケージマネージャ 画面に依存しないライブラリなら使えるかも CodePlex,
Githubなど • ライブラリが対応してなかったらコードを入手して Xamarin用にビルドという手も 30
31.
他のクロスプラット フォーム開発ツールとの比較 Titanium / PhoneGap
/ Adobe AIR / Delphi XE 31
32.
Xamarin(おさらい) 言語 実行形式 共通化可能 C#(.NET) Android:JIT iOS:AOT 基本ライブラリ相当機能 (計算処理、通信処理、非同期処理など) 共通化不可能 PF固有の機能(UI, センサーなど) PF固有機能 呼び出し PF毎のAPIを呼び出し可能 32
33.
Titanium Mobile 言語 JavaScript 実行形式 インタプリタ 共通化可能 共通化不可能 PF固有機能 呼び出し コアロジック、GPS など 共通APIが用意されている機能、 Label,
EditBoxなど簡素なUI PF固有のUIパーツ(CoverFlowView等) コアロジックでもPF依存が多いとの Module を作成 33
34.
PhoneGap/Sencha Touch 言語 HTML5+CSS+JavaScript 実行形式 WebView上で動作するWebアプリ 共通化可能 Webアプリなので一見は共通。 共通APIが用意される一般的な機能 共通化不可能 ブラウザ依存は少なくない 共通APIが無い機能 PF固有機能 呼び出し Plugin を作成 34
35.
Adobe AIR for
モバイル 言語 実行形式 共通化可能 共通化不可能 PF固有機能 呼び出し ActionScript Android:JIT iOS:AOT UI含め API が用意されていれば可能。 ただしUIは独自レンダリング 基本的には無いが、 その分機能が最小公倍数である Native Extensions を作成 35
36.
Delphi XE 言語 実行形式 共通化可能 共通化不可能 PF固有機能 呼び出し Delphi Android:JIT(JNI) iOS:AOT UI含め API
が用意されていれば可能。 UIは独自レンダリングだが Pixel Perfect でPFのスタイルを忠実に再現。 PF毎のAPIもあり、 それを使った場合は共通化不可能 PF毎のAPIを呼び出し可能 36
37.
Others • Qt Mobile • • RoboVM • • C++ で書けるなら最強じゃね?(書けるなら) Java
→ LLVM → Obj-C Unity, Corona • ゲーム向けっぽい 37
38.
しかし Xamarin 最大の利点は 38
39.
C# 39
40.
C# is Cool!!! [Objective-C]! 01
[button1 addTarget:self action:@selector(onClick:)! 02 forControlEvents:UIControlEventTouchDown];! …! 5 Lines 03 -(void)onClick:(UIButton*)button{! 04 NSLog(@“Hello”);! 05 }! ! [Java]! 01 button1.setOnClickListener(new OnClickListener() {! 02 @Override! 03 public void onClick(View view) {! 04 05 6 Lines Log.d(TAG, “Hello”);! }! 06 });! ! [C#]! 01 button1.Click += (s, e) => Debug.WriteLine(“Hello”); ref https://xamarin.com/csharp 40 1 Line
41.
LINQ 01.0∼9 の数値を! 02.偶数だけにして! 03.大きい順に並び替えて! 04.10倍にして! 05.出力する! ! [C#]! 01 new
int[]{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }! 02 .Where(x => x % 2 == 0)! 03 .OrderByDescending(x => x)! 04 .Select(x => x * 10)! 05 .ToList().ForEach(x => Debug.WriteLine(x));! ! [Output]! > 80 60 40 20 0 41
42.
async/await ワーカースレッドで時間のかかる処理をして、終わったらメインスレッドで結果を表示 [Java]! 01 int doHeavyWork()
{! 02 return /* working... */;! 03 }! ! [C#]! 01 Task<int> DoHeavyWork() {! 02 return Task.Run<int>(() => {! 03 return /* working... */;! 04 });! 05 }! 04 private void onClick(View v) {! 05 new AsyncTask<Void, Void, Integer>() { ! ! 06 @Override! 06 async void onClick(object s, EventArgs e) {! 07 protected Integer doInBackground(Void... params) result = await DoHeavyWork();! 07 var {! 08 return doHeavyWork();! 08 label1.Text = "count = " + result;! 09 }! 09 }! ! 10 protected void onPostExecute(Integer result) {! 11 label1.Text = "count = " + result;! 12 };! 13 }.execute((Void)null);! 14 } 42
43.
まとめ 43
44.
まとめ • Mac + Xamarin
Studio + Xamarin.Android + Xamarin.iOS で クロスPF 開発 • Win は、VS + Xamarin Addin で • PCL でコアロジックをクロスPFでバイナリ共有 • C# >>>>>>> Java, Objective-C 44
45.
Links • Xamarin Developer Center
- http://docs.xamarin.com/ • Xamarin日本語情報(XLSoft) - http://www.xlsoft.com/jp/products/xamarin/ • Qiita - http://qiita.com/tags/xamarin • はてなグループ - http://hatenablog.com/g/12921228815715432734 • Facebookグループ - https://www.facebook.com/groups/ 778386365523431/ • インサイドXamarin(Build Insider) - http://www.buildinsider.net/mobile/ insidexamarin • StackOverflow - http://stackoverflow.com/questions/tagged/monodroid +or+monotouch+or+xamarin?sort=active 45
46.
Xamarin Advent Calendar
2013 ref http://qiita.com/advent-calendar/2013/xamarin 46
47.
What's Next? • Xamarin Test
Cloud • Xamarin Studio iOS UI designer • X-Platform MVVM Frameworks • MvvmCross / QuickCross / ReactiveUI / etc • Using Locations and Maps • Xamarin Evolve 2014 (Oct 6-10) 47
48.
ありがとうございました
Download