第1回 japan xamarin user group conference - xamarin 概要

Post on 19-Jun-2015

1.801 Views

Category:

Mobile

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

第1回 Japan Xamarin User Group Conference でお話した Xamarin 概要に関するセッションです。

TRANSCRIPT

2014/7/5 (Sat) 第1回 Japan Xamarin User Group Conference

Xamarin 概要エクセルソフト株式会社Business Development Manager

田淵 義人@ytabuchi

080-7015-3586

自己紹介 • 田淵義人• エクセルソフトで 10 年ほど。非開発者。• RoboHelp, MadCap Flare, Alchemy

CATALYST などのヘルプ、ローカライズ関連製品、 Aspose などの .NET/Java 開発製品の担当• Xamarin 頑張ってます。

• twitter.com/ytabuchi• facebook.com/ytabuchi.xlsoft• ytabuchi.hatenablog.com

Xamarin とは

Xamarin (ザマリン)iOS/Android/Mac の“ネイティブ” アプリをC# だけで開発できるツール

Xamarin を使用した開発

Mac も入れたげて!>

“ ネイティブ” アプリ

• ネイティブ UI• ネイティブ “パフォーマンス”• AOT ( 事前コンパイル ) / JIT コンパイル

でネイティブとして動作

C# で開発 • async/await, LINQ, ラムダ式などの実装が使える• Java, Objective-C, もちろん Swift すら

書く必要がない

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

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

しくみ

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

iOSAPI

100% 対応

AndroidAPI

100% 対応

できること

iOS アプリを開発

• 開発、ビルド、デバッグ• Windows (Visual Studio) と Mac ( ビルド ) の Mac

側に実機かシミュレーターを接続しリモートビルド• Mac (Xamarin Studio) に実機かシミュレーターを接

• 画面構築• iOS Designer ( ステキ! )• C# で動的に生成

• コード• iOS のお作法に則った C#

• その他• iOS API 100% 対応• Unit Test, Test Flight• Objective-C バインディング / C ライブラリを

P/Invoke• Calabash-iOS 受け入れテスト

画面遷移iOS

Android アプリを開発

• 開発、ビルド、デバッグ• Windows (Visual Studio / Xamarin Studio) に実

機か Emulator を接続• Mac (Xamarin Studio) に実機か Emulator を接続

• 画面構築• UI Designer / XML• C# で動的生成

• コード• Android のお作法に則った C#

• その他• Android API 100% 対応• Unit Test• Java バインディング / JNI / P/Invoke• Calabash-Android 受け入れテスト

画面遷移Android

Mac アプリを開発

• 開発環境• Mac (Xamarin Studio)

• 画面• Xcode ( 寂しい )

• コード• C#

• お作法• Cocoa (?)• Auto Complete も OK (?)

Xamarin を使用した開発

ロジックの共通化

Mac も入れたげて!>

バックエンド / ロジックの共通化

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

• どのように共通化するのか?• Universal App (Shared

Project)• PCL (Portable Class

Library) を活用• Profile に注意

• リンク参照• MvvmCross などのフレー

ムワークを使用

http://jp.xlsoft.com/demo2/xamarin/TaskyPortable_ja.zip | http://jp.xlsoft.com/demo2/xamarin/TaskyPro_ja_2012.zip

NuGet • 共通化部分は HTTP Client, Json.NET, MvvmCross などのライブラリを NuGet から取得して効率よく開発

Xamarin 3

Xamarin.Forms - 画面の共通化

UI “ コード”の共通化ビルド時にネイティブ UI にマップXAML で書ける!(ただし手動)

Phone

Pages

Content MasterDetail Navigation Tabbed Carousel

Layouts

Stack Absolute Relative Grid ContentView ScrollView Frame

Controls

ActivityIndicator

BoxView Button DatePicker Editor

Entry Image Label ListView Map

OpenGLView Picker ProgressBar SearchBar Slider

Stepper TableView TimePicker WebView EntryCell

ImageCell SwitchCell TextCell ViewCell

出来ることリンク

サンプル・ブログなど

• 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

• 札幌ワークスさん Xamarin カテゴリ• http://furuya02.hatenablog.com/archive/category/

Xamarin

• 田淵ブログ• http://ytabuchi.hatenablog.com/entry/toc

• Xamarin ブロググループ• http://j.mp/xm-htngrp

• Qiita Xamarin タグ• http://qiita.com/tags/xamarin

Xamarin.Forms について

• 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

de:code セッションビデオ

• iOS/Android アプリを C#/.NET で開発 - Xamarin で実現するクロスプラットフォーム対応 – | de:code 2014 | Channel 9• http://channel9.msdn.com/Events/de-

code/2014/DE-007

出来ないこと

Write Once, Run Anywhere

結局 Android / iOS / Mac の開発知識は必要iOS アプリ開発には Mac 必須

ひょっとすると…

Xamarin って凄くない!?\\凄いと思います!//でもお高いんでしょう?…はい…w

価格 ( コミュニティ仕様 )

• 弊社から購入いただくと日本語サポート付き• アカデミックあります

Starterほぼ無意味

IndieVS, WCF, CI サポートなし$299 1OS@1 年

Business$999 1OS@1 年\127800 1OS@1年

事例

ルナルナ 体温ノート

株式会社エムティーアイ 様

http://www.xlsoft.com/jp/products/xamarin/apps_mti.html

必要なシステム

開発 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 統合インストーラーに同梱)

評価版

xamarin.com/downloadj.mp/xm-doc ( 日本語資料 )

まとめ

Xamarin (ザマリン)iOS/Android の“ネイティブ” アプリをC# だけで開発できるツール

iOSAPI

100% 対応

AndroidAPI

100% 対応

Xamarin を使用した開発

Xamarin.Forms - 画面の共通化

UI “ コード”の共通化ビルド時にネイティブ UI にマップXAML で書ける!(フル手動)

Phone

宣伝

Xamarin 本 • 日経 BP さんのご好意により、 10% 引きで購入いただけます!•チラシを入り口に置いていますのでご活用

ください。

•後でじゃんけん大会で 2 名様にプレゼント!

懇親会 •今日は Xamarin 3 発表記念のパーティです•是非 Xamarin ケーキを囲んでみんなで写真を撮りましょう• Xamarin に報告したいからw

•懇親会終わった後、飲み行きたい人は残ってください

Xamarin 盛り立てていきましょう!

ご質問、ご相談は田淵までお気軽にどうぞytabuchi@xlsoft.com080-7015-3586 / 03-5440-7875twitter.com/ytabuchifacebook.com/ytabuchi.xlsoft

top related