アンドロイダーが取り組
むXamarin開発
2017/2/11 合同勉強会 in 福岡
堤大輔
スピーカー紹介
株式会社アイキューブドシステムズ
製品開発運用本部 堤大輔
Androidアプリ開発に従事
所属コミュニティー JXUG
特技 ダンス、卓球
趣味 ラジオを聴くこと
CLOMO MDM
http://www.i3-systems.com/securedapps.html
CLOMO SECURED APPs
ラインナップ:Browser/Mailer/Calendar/Contacts/Docs
http://www.i3-systems.com/securedapps.html
アジェンダ
• 今までのアプリ開発
• Xamarinとは?
• Xamarin使えるの?
• 導入時のポイント
• Androidエンジニアであることの優位性
• 気をつけること
• 既存のAndroidプロジェクトを置き換えてみる
• まとめ
Xamarin開発初めてまだ1〜2ヶ月の
初心者です!
今までのアプリ開発
http://www.buildinsider.net/mobile/xamarin/01 http://www.slideshare.net/ytabuchi/xamarin-
20140930-sansan?ref=http://www.buildinsider.net/mobile/xamarin/01
Xamarinとは?
・クロスプラットフォーム開発ツール。C#コードで記述
し、コードの共通開発が可能。
・開発環境はVisual Studio か Xamarin Studio
・iOS開発の場合はMacが必須
・ネイティブUI、APIを100%活用しネイティブパフォー
マンスを実現
http://www.slideshare.net/ytabuchi/xamarin-20140930-
sansan?ref=http://www.buildinsider.net/mobile/xamarin/01
なぜXamarinなのか?
• ソースコードの共通化
• メンテナンス性が上がり、品質の向上につながる
• 仕様の統一
• エンジニアの確保
• Microsoftのサービスと連携
• リプレイスのきっかけ
Xamarin使えるの?
http://www.slideshare.net/ytabuchi/xamarin-20140930-
sansan?ref=http://www.buildinsider.net/mobile/xamarin/01
http://www.slideshare.net/ytabuchi/10xamarin?ref=http://ytabuchi.h
atenablog.com/entry/2016/04/05/142525
Xamarin Forms
・ネイティブAPIをラップし、画面を共通化
・新しく学習する必要がある
・単純な画面を作成する事に適している
http://www.slideshare.net/ytabuchi/xamarin-20140930-
sansan?ref=http://www.buildinsider.net/mobile/xamarin/01
向いていない
・プラットフォーム特有の機能を多く使用するアプリ
・iOS/Androidで仕様が大きく異なるアプリ
・今後同じ機能を横展開する予定がないプロダクト
導入のポイント
・しっかりと調査期間を設ける
・無理に共通化はせず、ネイティブとPCLの役割を明確
にする
・iOS開発のためにはMac必須。コード解析するために
はWindows機があったほうが便利。
Androidエンジニアであることの優位性
・javaとC#は似ている
・とは言えでネイティブの知識が必要
・C#言語を介すとiOS開発に入りやすい
C#とjavaの比較表
Java C#
final readonly/const
Map Dictionary
for foreach
Import using
右から左に移動するような
移植が可能
あなたも既存のAndroidプロジェクトを置
き換えてみよう!
気をつけること
・Xamarin万能じゃないよ
・Nativeでしか実現できないこともある
・各プラットフォームの特性を考慮した上で共通化する
・丁寧に開発環境を構築する
まとめ
・AndroidエンジニアはXamarinに移行しやすい
・Xamarinはそんなにハードル高くありません。かまえ
ることなくまずは開発してみましょう。
・ソースコードを共通化して皆幸せ!!
ご静聴ありがとうございました
。

アンドロイダーが取り組むXamarin開発