Xamarin基礎講座
Xamarinハンズオン
Japan Xamarin User Group
田淵 義人
080-7015-3586
Twitter: @ytabuchi
facebook: xlsoft.ytabuchi
Blog: Xamarin日本語情報
田淵義人@エクセルソフト
Xamarin コミュニティエバンジェリスト
2016年4月 Microsoft MVP Visual Studio and Development Technologies 受賞
連載・執筆
Build Insider, マイナビニュース
.NET開発テクノロジ入門2016年版(Xamarinの章)
コミュニティ
Twitter: @ytabuchi
facebook: ytabuchi.xlsoft
Blog: Xamarin 日本語情報
2
自己紹介
第1部 30分+90分
Xamarin 概要
Android, iOS 概要
Xamarin ネイティブ
第2部 30分+90分
Xamarin.Forms
まとめ
LT大会&キャッチアップ 30分
3
本日のスケジュール
http://github.com/ytabuchi/XamarinHOL
4
資料
アジェンダ
Xamarin 概要
Android, iOS 概要
Xamarin ネイティブ
Xamarin.Forms
まとめ
5
Miguel, Nat
Mono, Ximian
Novell, Attachmate
Microsoft
6
Xamarin (ザマリン・企業)
C# / .NET / Visual Studio
フル “ネイティブ” アプリ
API 100% 移植
コード共通化
7
Xamarin
C#
8
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net.Http;
using System.Xml.Serialization;
button.Click += async (sender, e) =>
{
using (var client = new HttpClient())
{
using (var reader = new StreamReader(await client.GetStreamAsync("xxx")))
{
var deserializer = new XmlSerializer(typeof(Rss));
var latest = deserializer.Deserialize(reader) as Rss;
var feed = latest.Channel.Items
.Where(x => x.Link.Contains("xamarin"))
.Select(x => x.Title).ToList();
}
}
};
2つの開発手法
9
Shared C# App Logic
(PCL)
Shared XAML/C# UI Code
(Xamarin.Forms)
iOS
C# UI
Shared C# App Logic
(PCL)
Android
C# UI
Windows
C# UI
Xamarin.FormsXamarin Native
ロジックのみ共通化
UIはネイティブで個別に作りこむ
必要な知識
10
プラットフォーム
個別
Xamarin Native
iOS API Objective-C, Swift Xcode
Android API Java Android Studio
Windows API Visual StudioC#
API 言語 統合開発環境
iOS API Objective-C, Swift Xcode
Android API Java Android Studio
Windows API Visual StudioC#
Xamarin.Forms
iOS API
Android API
Windows API
Objective-C, Swift Xcode
Java Android Studio
Visual StudioC#Xamarin.Forms
UI toolkit
Visual Studio Community の利用条件:
https://www.microsoft.com/ja-jp/dev/products/community.aspx
11
必要なライセンス
http://nuits.hatenadiary.jp/entry/2016/05/06/174037
アジェンダ
Xamarin 概要
Android, iOS 概要
Xamarin ネイティブ
Xamarin.Forms
まとめ
12
Xamarin.Android
13
構成
14
ソースファイル
(C#)
UI 定義
(axml)
メタデータ
(Resources)
Activity
15
Activity 1
UI
Code
Activity 2
UI
Code
Activity 3
UI
Code
Data, files,
images など
アプリ
Layout
16
Layout
17
Activity + Layout
18
<LinearLayout ... >
<TextView ... />
<EditText ... />
<Button ... />
<TextView ... />
</LinearLayout>
[Activity]
public class PiActivity : Activity
{
...
...
}
Resource Id
19
[Activity(MainLauncher = true)]
public class MainActivity : Activity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.Main);
var et = FindViewById<EditText>(Resource.Id.digitsInput);
...
}
...
}
Intent
20
Intent
21
public class MainActivity : Activity
{
...
void OnClick(object sender, EventArgs e)
{
var intent = new Intent(this, typeof(Activity2));
base.StartActivity(intent);
}
}
Intent
22
Navigation
23
Xamarin.iOS
24
構成
25
ソースファイル
(C#)
UI 定義
(Storyboard + XiB)
メタデータ
(property lists)
Frame
26
Bounds
27
View (コードで)
28
29
Storyboard
Constraints (制約)
30
Multi Screen
31
Segue
32
Segue
33
アジェンダ
Xamarin 概要
Android, iOS 概要
Xamarin ネイティブ
Xamarin.Forms
まとめ
34
Xamarin ネイティブ
35
UIは個別
ネイティブAPIは個別
PCL vs Shared
ネットワーク
Json, XML
永続化
async/await
36
Xamarin ネイティブ
iOS
C# UI
Shared C# App Logic
(PCL)
Android
C# UI
Windows
C# UI
Xamarin Native
ロジックのみ共通化
UIはネイティブで個別に作りこむ
アジェンダ
Xamarin 概要
Android, iOS 概要
Xamarin ネイティブ
Xamarin.Forms
まとめ
37
抽象化UIライブラリ
最大公約数
ワンソース・ネイティブUI/UX
XAML / MVVM
拡張可能
38
Xamarin.Forms
Shared C# App Logic
(PCL)
Shared XAML/C# UI Code
(Xamarin.Forms)
Xamarin.Forms
Pages
39
New!
Layouts
40
New!New!
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
41
Xamarin.Forms
ワンソース
ネイティブの
UI/UX
42
XAML
43
XAMLの機能
44
XAMLの機能
Resource
Style
Trigger
Behavior
Value Converter
Data Template
Data Binding
45
Model View
ViewModel
Data Binding
Messaging
Center
46
MVVM
ネイティブコントロール (UI)
Custom Renderer
Effects
47
ネイティブAPI
Dependency
Service
Plugin
48
アジェンダ
Xamarin 概要
Android, iOS 概要
Xamarin ネイティブ, Xamarin.Forms
開発手法
まとめ
49
C# / .NET / Visual Studio
フル “ネイティブ” アプリ
API 100% 移植
コード共通化
50
Xamarin
2つの開発手法
51
Shared C# App Logic
(PCL)
Shared XAML/C# UI Code
(Xamarin.Forms)
iOS
C# UI
Shared C# App Logic
(PCL)
Android
C# UI
Windows
C# UI
Xamarin.FormsXamarin Native
ロジックのみ共通化
UIはネイティブで個別に作りこむ
#Xamarinはいいぞ
52
公式ドキュメント
ペゾルド本(PDFが無料配布中)
日本語の情報
Japan Xamarin User Group
Build Insider
Qiita
田淵のブログ
各種ブログへのリンク
53
リソース
ありがとうございました
Japan Xamarin User Group
田淵 義人
080-7015-3586
Twitter: @ytabuchi
facebook: xlsoft.ytabuchi
Blog: Xamarin日本語情報

More Related Content

PDF
この辺でXamarin導入による 効果と限界をしっかり把握してみよう MVP Community Camp 2015
PDF
Xamarin 基礎講座
PDF
Xamarin の概要と活用事例
PDF
Xamarin の特徴と開発手法概要
PDF
Xamarin概要
PDF
Xamarinをこれから始める皆様へ
PDF
Xamarin から使う Azure
PDF
Xamarin 概要
この辺でXamarin導入による 効果と限界をしっかり把握してみよう MVP Community Camp 2015
Xamarin 基礎講座
Xamarin の概要と活用事例
Xamarin の特徴と開発手法概要
Xamarin概要
Xamarinをこれから始める皆様へ
Xamarin から使う Azure
Xamarin 概要

What's hot (20)

PDF
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
PDF
Sakenomyの開発経緯と内容をできるだけ公開しちゃいます
PDF
Xamarin概要+最新情報
PDF
BlueMonkeyプロジェクトのご紹介
PDF
NET Standard と Xamarin
PDF
Xamarin バッドノウハウ大全
PPTX
Xamarin の救世主 Unity !
PDF
Xamarin 概要 2017/01/15
PDF
Xamarinの歩き方
PDF
Xamarin概要と活用方法
PDF
Xamarin.Forms概要
PPTX
Developers.io.札幌 xamarinってどうよ
PDF
ちょっとエモい話
PDF
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
PDF
Realm Mobile Platform 概要
PPTX
ゆるふわ Xamarin Tips
PPTX
Xamarin ~ iOS/Android/Windows アプリを C# で作ろう~
PDF
Xamarin概要と活用方法
PPTX
第1回 Japan Xamarin User Group Conference - Xamarin 概要
PDF
Xamarin × Visual Studio Updates
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
Sakenomyの開発経緯と内容をできるだけ公開しちゃいます
Xamarin概要+最新情報
BlueMonkeyプロジェクトのご紹介
NET Standard と Xamarin
Xamarin バッドノウハウ大全
Xamarin の救世主 Unity !
Xamarin 概要 2017/01/15
Xamarinの歩き方
Xamarin概要と活用方法
Xamarin.Forms概要
Developers.io.札幌 xamarinってどうよ
ちょっとエモい話
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Realm Mobile Platform 概要
ゆるふわ Xamarin Tips
Xamarin ~ iOS/Android/Windows アプリを C# で作ろう~
Xamarin概要と活用方法
第1回 Japan Xamarin User Group Conference - Xamarin 概要
Xamarin × Visual Studio Updates
Ad

Viewers also liked (20)

PPTX
Introducción a xamarin
PDF
10分でわかる無料になったXamarin
PDF
Desarrollo de Apps nativas multiplataforma con Xamarin
PPTX
Xamarin開発環境の選択
PPTX
Xamarin forms
PDF
Introducción al desarrollo de apps móviles con Xamarin (Android & iOS)
PPTX
Taller campus party .net
PPTX
Monkey space 2013
PPTX
Conociendo el resto de ecosistema Xamarin
PPTX
Servicios Xamarin
PDF
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
PDF
Introducción a Xamarin Forms con XAML
PDF
NetConfUY: Maximizando la productividad del desarrollo móvil
PPTX
20分でできる!Xamarin.Forms入門
PPTX
Introducción a Xamarin
PDF
Native i os, android, and windows development in c# with xamarin 4
PDF
Building Quality Cross-Platform Apps with Xamarin
PDF
POO Programación Orientada a Objetos
PPTX
Xamarin 実戦投入時に気をつけたいことあれこれ
PDF
Orientacion A Objetos Para Dummies
Introducción a xamarin
10分でわかる無料になったXamarin
Desarrollo de Apps nativas multiplataforma con Xamarin
Xamarin開発環境の選択
Xamarin forms
Introducción al desarrollo de apps móviles con Xamarin (Android & iOS)
Taller campus party .net
Monkey space 2013
Conociendo el resto de ecosistema Xamarin
Servicios Xamarin
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
Introducción a Xamarin Forms con XAML
NetConfUY: Maximizando la productividad del desarrollo móvil
20分でできる!Xamarin.Forms入門
Introducción a Xamarin
Native i os, android, and windows development in c# with xamarin 4
Building Quality Cross-Platform Apps with Xamarin
POO Programación Orientada a Objetos
Xamarin 実戦投入時に気をつけたいことあれこれ
Orientacion A Objetos Para Dummies
Ad

Similar to Xamarin 基礎講座 2016年7月版 (20)

PPTX
Xamarin基礎講座 Xamarinハンズオン(2016.09 浜松) #JXUG #jaghama
PDF
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
PDF
Introduction to Xamarin - JXUG 20171209
PDF
Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編
PDF
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
PDF
Xamarin 概要 @ 2014/10/18 わんくま同盟 東京勉強会 #92
PDF
20171202 Xamarinの歩き方
PDF
XamarinStudio勉強会 2014/09/08
PDF
Xamarin.Forms のこれまでとこれから
PDF
10分で分かるxamarin
PDF
Xamarin を使うとどんなことができるの?
PDF
Xamarin 概要 2014年08月版
PDF
Visual Studio + xamarin で始めるモバイル アプリ開発
PDF
Xamarinでアプリを作ったときのエトセトラ
PDF
JXUGC 13 東京 はじめに
PDF
Xamarin 紹介:Windows Phone / iOS / Android アプリ同時開発のススメ 2015/8/20 版
PPTX
Xamarin で始めるクロスプラットフォーム開発
PDF
Xamarin 概要 2015年5月版
PDF
続Xamarinはじめました
PDF
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
Xamarin基礎講座 Xamarinハンズオン(2016.09 浜松) #JXUG #jaghama
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Introduction to Xamarin - JXUG 20171209
Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Xamarin 概要 @ 2014/10/18 わんくま同盟 東京勉強会 #92
20171202 Xamarinの歩き方
XamarinStudio勉強会 2014/09/08
Xamarin.Forms のこれまでとこれから
10分で分かるxamarin
Xamarin を使うとどんなことができるの?
Xamarin 概要 2014年08月版
Visual Studio + xamarin で始めるモバイル アプリ開発
Xamarinでアプリを作ったときのエトセトラ
JXUGC 13 東京 はじめに
Xamarin 紹介:Windows Phone / iOS / Android アプリ同時開発のススメ 2015/8/20 版
Xamarin で始めるクロスプラットフォーム開発
Xamarin 概要 2015年5月版
続Xamarinはじめました
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介

More from Yoshito Tabuchi (11)

PDF
Kong Summit 2021 振り返り
PDF
Kong 概要
PDF
勉強会参加のススメ
PDF
Kong Enterprise の紹介
PDF
How does a sales person grow up his community
PDF
C# と Xamarin
PDF
Xamarin で Cognitive Services を使う
PDF
Xamarin で Cognitive Services を使ってみよう
PDF
Xamarinを触り始めた頃の話〜触りたい人に向けて〜
PDF
2018年のXamarinの概要と活用方法
PDF
Computer Vision と Translator Text API 使ってみた
Kong Summit 2021 振り返り
Kong 概要
勉強会参加のススメ
Kong Enterprise の紹介
How does a sales person grow up his community
C# と Xamarin
Xamarin で Cognitive Services を使う
Xamarin で Cognitive Services を使ってみよう
Xamarinを触り始めた頃の話〜触りたい人に向けて〜
2018年のXamarinの概要と活用方法
Computer Vision と Translator Text API 使ってみた

Xamarin 基礎講座 2016年7月版