SlideShare a Scribd company logo
1 of 17
Download to read offline
RxSwiftの
データバインディング
だけ
2016/11/17
第3回RxSwift勉強会@Sansan
@hironytic
自己紹介
• 一宮 浩教 / ひろん
• 徳島で働く

iOS / Android / UWP エンジニア
• https://twitter.com/hironytic
• https://github.com/hironytic
MVVM
View ViewModel Model
外観
プラットフォ
ームの都合
UIの状態
UIのための
ロジック
ビジネス
ロジック
呼び出し
通知
データ
バイン
ディング
WPFなら
XAML
ここだけ
RxSwift
作戦
• ViewModel → View(出力)
➡ Observable
• View → ViewModel(入力)
➡ Observer
Variableで実現
メソッドに直結
override func viewDidLoad() {
super.viewDidLoad()
viewModel.number1Text
.bindTo(number1Field.rx.text)
.addDisposableTo(disposeBag)
viewModel.number2Text
.bindTo(number2Field.rx.text)
.addDisposableTo(disposeBag)
viewModel.calcEnabled
.bindTo(calcButton.rx.isEnabled)
.addDisposableTo(disposeBag)
viewModel.answerText
.bindTo(answerLabel.rx.text)
.addDisposableTo(disposeBag)
number1Field.rx.text
.bindTo(viewModel.number1ChangedAction)
.addDisposableTo(disposeBag)
number2Field.rx.text
.bindTo(viewModel.number2ChangedAction)
.addDisposableTo(disposeBag)
calcButton.rx.tap
.bindTo(viewModel.calcAction)
.addDisposableTo(disposeBag)
}
ViewController
bind
してます
https://github.com/hironytic/RxSwiftBindingExample/blob/ec0b98e4e07b7add0813657b76963a1a0237fd94/
RxSwiftBindingExample/ViewController.swift
private func calc() {
let n1 = Int(_number1Text.value) ?? 0
let n2 = Int(_number2Text.value) ?? 0
_answerText.value = String(n1 + n2)
}
private func number1Changed(_ value: String?) {
_number1Text.value = value ?? ""
updateCalcState()
}
private func number2Changed(_ value: String?) {
_number2Text.value = value ?? ""
updateCalcState()
}
private func updateCalcState() {
_calcEnabled.value = !_number1Text.value.isEmpty
&& !_number2Text.value.isEmpty
}
ViewModel
https://github.com/hironytic/RxSwiftBindingExample/blob/ec0b98e4e07b7add0813657b76963a1a0237fd94/
RxSwiftBindingExample/ViewModel.swift
private func calc() {
let n1 = Int(_number1Text.value) ?? 0
let n2 = Int(_number2Text.value) ?? 0
_answerText.value = String(n1 + n2)
}
private func number1Changed(_ value: String?) {
_number1Text.value = value ?? ""
updateCalcState()
}
private func number2Changed(_ value: String?) {
_number2Text.value = value ?? ""
updateCalcState()
}
private func updateCalcState() {
_calcEnabled.value = !_number1Text.value.isEmpty
&& !_number2Text.value.isEmpty
}
ViewModel
https://github.com/hironytic/RxSwiftBindingExample/blob/ec0b98e4e07b7add0813657b76963a1a0237fd94/
RxSwiftBindingExample/ViewModel.swift
on(_:)の.nextから直結
private func calc() {
let n1 = Int(_number1Text.value) ?? 0
let n2 = Int(_number2Text.value) ?? 0
_answerText.value = String(n1 + n2)
}
private func number1Changed(_ value: String?) {
_number1Text.value = value ?? ""
updateCalcState()
}
private func number2Changed(_ value: String?) {
_number2Text.value = value ?? ""
updateCalcState()
}
private func updateCalcState() {
_calcEnabled.value = !_number1Text.value.isEmpty
&& !_number2Text.value.isEmpty
}
ViewModel
https://github.com/hironytic/RxSwiftBindingExample/blob/ec0b98e4e07b7add0813657b76963a1a0237fd94/
RxSwiftBindingExample/ViewModel.swift
Variable
private func calc() {
let n1 = Int(_number1Text.value) ?? 0
let n2 = Int(_number2Text.value) ?? 0
_answerText.value = String(n1 + n2)
}
private func number1Changed(_ value: String?) {
_number1Text.value = value ?? ""
updateCalcState()
}
private func number2Changed(_ value: String?) {
_number2Text.value = value ?? ""
updateCalcState()
}
private func updateCalcState() {
_calcEnabled.value = !_number1Text.value.isEmpty
&& !_number2Text.value.isEmpty
}
ViewModel
https://github.com/hironytic/RxSwiftBindingExample/blob/ec0b98e4e07b7add0813657b76963a1a0237fd94/
RxSwiftBindingExample/ViewModel.swift
• 数値入力欄 ×2

計算ボタン
• 計算ボタンを押すと
入力された2つの数値を
足し算した結果を表示
• 数値入力欄が両方
埋まってないと

計算ボタンは無効
• あまりに単純なので

Modelは省略 😜
できた
• Rxのoperatorの使用ゼロ!😳
• 従来のIBOutletとIBActionの世界のよう!😏
🐣
なにがうれしいの?
うれしいこと
🎊「RxSwiftを使った」 🎉
うれしいこと
• UIロジックのテスト
• UIテストって面倒じゃないですか?
- デザインの変更に弱いとか
- Accessibility Identifierとか
• ViewModelのテストでUIロジックはテストできる
後日談
• 2016年の夏
• この方針で趣味プログラムを作り始めた
• 現在(2016年11月)
• 我慢できなくなって、ViewModel、Modelでも

Rxのoperatorを使うようになっている
👁 👁

👄
データバインディングだけ
データバインディングだけ
データバインディングだけ…
まとめ
データバインディングだけだからと

軽い気持ちでRxSwiftに手を出すと、

「そっち」側の世界へ引き込まれる
ありがとうございました
📃ソースコード
https://github.com/hironytic/RxSwiftBindingExample
RxSwiftのデータバインディングだけ

More Related Content

What's hot

React.js + Reduxで作るSPA
React.js + Reduxで作るSPAReact.js + Reduxで作るSPA
React.js + Reduxで作るSPAShohei Saeki
 
Isomorphic web development with scala and scala.js
Isomorphic web development  with scala and scala.jsIsomorphic web development  with scala and scala.js
Isomorphic web development with scala and scala.jsTanUkkii
 
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作ったRuby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作ったtakanori suzuki
 
Alibaba Cloud Serverless
Alibaba Cloud ServerlessAlibaba Cloud Serverless
Alibaba Cloud Serverless真吾 吉田
 
React+TypeScriptもいいぞ
React+TypeScriptもいいぞReact+TypeScriptもいいぞ
React+TypeScriptもいいぞMitsuru Ogawa
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)Daisuke Ikeda
 
freee社でのReactiveCocoa活用例
freee社でのReactiveCocoa活用例freee社でのReactiveCocoa活用例
freee社でのReactiveCocoa活用例yo_waka
 
レイヤードアーキテクチャを意識したPHPアプリケーションの構築
レイヤードアーキテクチャを意識したPHPアプリケーションの構築レイヤードアーキテクチャを意識したPHPアプリケーションの構築
レイヤードアーキテクチャを意識したPHPアプリケーションの構築Masashi Shinbara
 
Service worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたちService worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたちKinuko Yasuda
 
コンポーネント指向による、Reactのベストプラクティスとバッドプラクティス
コンポーネント指向による、Reactのベストプラクティスとバッドプラクティスコンポーネント指向による、Reactのベストプラクティスとバッドプラクティス
コンポーネント指向による、ReactのベストプラクティスとバッドプラクティスKohei Asai
 
第5回Sql server2017勉強会資料
第5回Sql server2017勉強会資料第5回Sql server2017勉強会資料
第5回Sql server2017勉強会資料TakenoriIijima
 
レイヤードアーキテクチャを意識した PHPアプリケーションの構築 ver2
レイヤードアーキテクチャを意識した PHPアプリケーションの構築 ver2レイヤードアーキテクチャを意識した PHPアプリケーションの構築 ver2
レイヤードアーキテクチャを意識した PHPアプリケーションの構築 ver2Masashi Shinbara
 
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化真乙 九龍
 
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編Masayuki KaToH
 

What's hot (20)

Ruby風Swift NSOperation編
Ruby風Swift NSOperation編Ruby風Swift NSOperation編
Ruby風Swift NSOperation編
 
React.js + Reduxで作るSPA
React.js + Reduxで作るSPAReact.js + Reduxで作るSPA
React.js + Reduxで作るSPA
 
Isomorphic web development with scala and scala.js
Isomorphic web development  with scala and scala.jsIsomorphic web development  with scala and scala.js
Isomorphic web development with scala and scala.js
 
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作ったRuby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
 
Alibaba Cloud Serverless
Alibaba Cloud ServerlessAlibaba Cloud Serverless
Alibaba Cloud Serverless
 
React+TypeScriptもいいぞ
React+TypeScriptもいいぞReact+TypeScriptもいいぞ
React+TypeScriptもいいぞ
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
 
React Redux Redux-Saga + サーバサイドレンダリング
React Redux Redux-Saga + サーバサイドレンダリングReact Redux Redux-Saga + サーバサイドレンダリング
React Redux Redux-Saga + サーバサイドレンダリング
 
About Reauire.js
About Reauire.jsAbout Reauire.js
About Reauire.js
 
freee社でのReactiveCocoa活用例
freee社でのReactiveCocoa活用例freee社でのReactiveCocoa活用例
freee社でのReactiveCocoa活用例
 
レイヤードアーキテクチャを意識したPHPアプリケーションの構築
レイヤードアーキテクチャを意識したPHPアプリケーションの構築レイヤードアーキテクチャを意識したPHPアプリケーションの構築
レイヤードアーキテクチャを意識したPHPアプリケーションの構築
 
Service worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたちService worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたち
 
コンポーネント指向による、Reactのベストプラクティスとバッドプラクティス
コンポーネント指向による、Reactのベストプラクティスとバッドプラクティスコンポーネント指向による、Reactのベストプラクティスとバッドプラクティス
コンポーネント指向による、Reactのベストプラクティスとバッドプラクティス
 
第5回Sql server2017勉強会資料
第5回Sql server2017勉強会資料第5回Sql server2017勉強会資料
第5回Sql server2017勉強会資料
 
レイヤードアーキテクチャを意識した PHPアプリケーションの構築 ver2
レイヤードアーキテクチャを意識した PHPアプリケーションの構築 ver2レイヤードアーキテクチャを意識した PHPアプリケーションの構築 ver2
レイヤードアーキテクチャを意識した PHPアプリケーションの構築 ver2
 
前座Lambda
前座Lambda前座Lambda
前座Lambda
 
20160927 reactmeetup
20160927 reactmeetup20160927 reactmeetup
20160927 reactmeetup
 
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
 
Starting java fx
Starting java fxStarting java fx
Starting java fx
 
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
 

Viewers also liked

Java → Kotlin 変換 そのあとに。
Java → Kotlin 変換 そのあとに。Java → Kotlin 変換 そのあとに。
Java → Kotlin 変換 そのあとに。健一 辰濱
 
What is reactive programming?
What is reactive programming?What is reactive programming?
What is reactive programming?Kenji Tanaka
 
ちょっとしたオレオレDSLも抽象構文木っぽくしておくと後からの拡張に対応しやすいよねっていうちょっとしたお話
ちょっとしたオレオレDSLも抽象構文木っぽくしておくと後からの拡張に対応しやすいよねっていうちょっとしたお話ちょっとしたオレオレDSLも抽象構文木っぽくしておくと後からの拡張に対応しやすいよねっていうちょっとしたお話
ちょっとしたオレオレDSLも抽象構文木っぽくしておくと後からの拡張に対応しやすいよねっていうちょっとしたお話chocolamint
 
RxSwiftをバインディングツールとして使ってみる
RxSwiftをバインディングツールとして使ってみるRxSwiftをバインディングツールとして使ってみる
RxSwiftをバインディングツールとして使ってみるHironytic
 
iOSアプリ開発でコンフリクトした話
iOSアプリ開発でコンフリクトした話iOSアプリ開発でコンフリクトした話
iOSアプリ開発でコンフリクトした話裕 四方
 
Eightにおけるエンジニア主導の取り組み
Eightにおけるエンジニア主導の取り組みEightにおけるエンジニア主導の取り組み
Eightにおけるエンジニア主導の取り組みSansan
 
成長するサービスを支えるAPI管理
成長するサービスを支えるAPI管理成長するサービスを支えるAPI管理
成長するサービスを支えるAPI管理Hideharu Okuma
 
ご注文はRxですか? -RxSwiftを実際に導入してみた件-
ご注文はRxですか? -RxSwiftを実際に導入してみた件-ご注文はRxですか? -RxSwiftを実際に導入してみた件-
ご注文はRxですか? -RxSwiftを実際に導入してみた件-Keisuke Tatsumi
 
アプリの不具合を少なくするために
アプリの不具合を少なくするためにアプリの不具合を少なくするために
アプリの不具合を少なくするために健一 辰濱
 
テストの種類とBDD #33testing
テストの種類とBDD #33testingテストの種類とBDD #33testing
テストの種類とBDD #33testingKoji Hasegawa
 
Robotium を使った UI テストとレイアウト確認の効率化
Robotium を使った UI テストとレイアウト確認の効率化Robotium を使った UI テストとレイアウト確認の効率化
Robotium を使った UI テストとレイアウト確認の効率化健一 辰濱
 
AWS Lambda ハンズオン 2-Tier アーキテクチャで未来へ
AWS Lambda ハンズオン 2-Tier アーキテクチャで未来へAWS Lambda ハンズオン 2-Tier アーキテクチャで未来へ
AWS Lambda ハンズオン 2-Tier アーキテクチャで未来へAmazon Web Services Japan
 
つながりを加速させる、Eightのリアルタイムリコメンデーション技術
つながりを加速させる、Eightのリアルタイムリコメンデーション技術つながりを加速させる、Eightのリアルタイムリコメンデーション技術
つながりを加速させる、Eightのリアルタイムリコメンデーション技術Yotaro Fujii
 
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針Ken Morishita
 
Astah Community スタートガイド
Astah Community スタートガイドAstah Community スタートガイド
Astah Community スタートガイドChangeVision
 
Mitos yudas mati yesus disalib
Mitos yudas mati yesus disalibMitos yudas mati yesus disalib
Mitos yudas mati yesus disalibhenry jaya teddy
 

Viewers also liked (20)

Java → Kotlin 変換 そのあとに。
Java → Kotlin 変換 そのあとに。Java → Kotlin 変換 そのあとに。
Java → Kotlin 変換 そのあとに。
 
What is reactive programming?
What is reactive programming?What is reactive programming?
What is reactive programming?
 
ちょっとしたオレオレDSLも抽象構文木っぽくしておくと後からの拡張に対応しやすいよねっていうちょっとしたお話
ちょっとしたオレオレDSLも抽象構文木っぽくしておくと後からの拡張に対応しやすいよねっていうちょっとしたお話ちょっとしたオレオレDSLも抽象構文木っぽくしておくと後からの拡張に対応しやすいよねっていうちょっとしたお話
ちょっとしたオレオレDSLも抽象構文木っぽくしておくと後からの拡張に対応しやすいよねっていうちょっとしたお話
 
RxSwiftをバインディングツールとして使ってみる
RxSwiftをバインディングツールとして使ってみるRxSwiftをバインディングツールとして使ってみる
RxSwiftをバインディングツールとして使ってみる
 
Realm meet up #17
Realm meet up #17Realm meet up #17
Realm meet up #17
 
Realmという衝撃
Realmという衝撃Realmという衝撃
Realmという衝撃
 
iOSアプリ開発でコンフリクトした話
iOSアプリ開発でコンフリクトした話iOSアプリ開発でコンフリクトした話
iOSアプリ開発でコンフリクトした話
 
Eightにおけるエンジニア主導の取り組み
Eightにおけるエンジニア主導の取り組みEightにおけるエンジニア主導の取り組み
Eightにおけるエンジニア主導の取り組み
 
成長するサービスを支えるAPI管理
成長するサービスを支えるAPI管理成長するサービスを支えるAPI管理
成長するサービスを支えるAPI管理
 
ご注文はRxですか? -RxSwiftを実際に導入してみた件-
ご注文はRxですか? -RxSwiftを実際に導入してみた件-ご注文はRxですか? -RxSwiftを実際に導入してみた件-
ご注文はRxですか? -RxSwiftを実際に導入してみた件-
 
アプリの不具合を少なくするために
アプリの不具合を少なくするためにアプリの不具合を少なくするために
アプリの不具合を少なくするために
 
テストの種類とBDD #33testing
テストの種類とBDD #33testingテストの種類とBDD #33testing
テストの種類とBDD #33testing
 
Robotium を使った UI テストとレイアウト確認の効率化
Robotium を使った UI テストとレイアウト確認の効率化Robotium を使った UI テストとレイアウト確認の効率化
Robotium を使った UI テストとレイアウト確認の効率化
 
実践Realm
実践Realm実践Realm
実践Realm
 
AWS Lambda ハンズオン 2-Tier アーキテクチャで未来へ
AWS Lambda ハンズオン 2-Tier アーキテクチャで未来へAWS Lambda ハンズオン 2-Tier アーキテクチャで未来へ
AWS Lambda ハンズオン 2-Tier アーキテクチャで未来へ
 
つながりを加速させる、Eightのリアルタイムリコメンデーション技術
つながりを加速させる、Eightのリアルタイムリコメンデーション技術つながりを加速させる、Eightのリアルタイムリコメンデーション技術
つながりを加速させる、Eightのリアルタイムリコメンデーション技術
 
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針
 
Astah Community スタートガイド
Astah Community スタートガイドAstah Community スタートガイド
Astah Community スタートガイド
 
Part 1
Part 1Part 1
Part 1
 
Mitos yudas mati yesus disalib
Mitos yudas mati yesus disalibMitos yudas mati yesus disalib
Mitos yudas mati yesus disalib
 

Similar to RxSwiftのデータバインディングだけ

RxJava on Android
RxJava on AndroidRxJava on Android
RxJava on Androidyo_waka
 
Xamarin で ReactiveUI を使ってみた
Xamarin で ReactiveUI を使ってみたXamarin で ReactiveUI を使ってみた
Xamarin で ReactiveUI を使ってみたHironov OKUYAMA
 
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips   Prism 4.5 & Kona project 等のご紹介XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips   Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介Shotaro Suzuki
 
レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】Yasuhito Yabe
 
JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」
JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」
JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」Hiroyuki Ohnaka
 
html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた Shumpei Shiraishi
 
MvvmCross 入門
MvvmCross 入門MvvmCross 入門
MvvmCross 入門jz5 MATSUE
 
いまさら学ぶMVVMパターン
いまさら学ぶMVVMパターンいまさら学ぶMVVMパターン
いまさら学ぶMVVMパターンYuta Matsumura
 
勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発Kazuki Nakajima
 
jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発
jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発
jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発Daizen Ikehara
 
jQuery Mobile 1.2 最新情報 & Tips
jQuery Mobile 1.2 最新情報 & TipsjQuery Mobile 1.2 最新情報 & Tips
jQuery Mobile 1.2 最新情報 & Tipsyoshikawa_t
 
Rails×React×TS で作るwebアプリ入門【weseek tech conf #10】
Rails×React×TS で作るwebアプリ入門【weseek tech conf #10】Rails×React×TS で作るwebアプリ入門【weseek tech conf #10】
Rails×React×TS で作るwebアプリ入門【weseek tech conf #10】WESEEKWESEEK
 
Tech talk salesforce mobile sdk
Tech talk   salesforce mobile sdkTech talk   salesforce mobile sdk
Tech talk salesforce mobile sdkKazuki Nakajima
 
Xamarin in Microsoft Build 2018 - JXUG Fukuoka May-25-2018
Xamarin in Microsoft Build 2018 - JXUG Fukuoka May-25-2018Xamarin in Microsoft Build 2018 - JXUG Fukuoka May-25-2018
Xamarin in Microsoft Build 2018 - JXUG Fukuoka May-25-2018Takeshi Fujimoto
 
第4回REST勉強会 RequireJS編
第4回REST勉強会 RequireJS編第4回REST勉強会 RequireJS編
第4回REST勉強会 RequireJS編ksimoji
 
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like databaseオフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like databaseyoshikawa_t
 
Xamarin.formsでのmvvm利用のコツ
Xamarin.formsでのmvvm利用のコツXamarin.formsでのmvvm利用のコツ
Xamarin.formsでのmvvm利用のコツMasuda Tomoaki
 

Similar to RxSwiftのデータバインディングだけ (20)

RxJava on Android
RxJava on AndroidRxJava on Android
RxJava on Android
 
Xamarin で ReactiveUI を使ってみた
Xamarin で ReactiveUI を使ってみたXamarin で ReactiveUI を使ってみた
Xamarin で ReactiveUI を使ってみた
 
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips   Prism 4.5 & Kona project 等のご紹介XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips   Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
 
MVVM入門
MVVM入門MVVM入門
MVVM入門
 
レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】
 
JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」
JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」
JavaOne 2015 報告会 @ 東京 「About MVC 1.0 & JSON-P」
 
html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
 
MvvmCross 入門
MvvmCross 入門MvvmCross 入門
MvvmCross 入門
 
いまさら学ぶMVVMパターン
いまさら学ぶMVVMパターンいまさら学ぶMVVMパターン
いまさら学ぶMVVMパターン
 
勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発
 
jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発
jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発
jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発
 
jQuery Mobile 1.2 最新情報 & Tips
jQuery Mobile 1.2 最新情報 & TipsjQuery Mobile 1.2 最新情報 & Tips
jQuery Mobile 1.2 最新情報 & Tips
 
Rails×React×TS で作るwebアプリ入門【weseek tech conf #10】
Rails×React×TS で作るwebアプリ入門【weseek tech conf #10】Rails×React×TS で作るwebアプリ入門【weseek tech conf #10】
Rails×React×TS で作るwebアプリ入門【weseek tech conf #10】
 
Tech talk salesforce mobile sdk
Tech talk   salesforce mobile sdkTech talk   salesforce mobile sdk
Tech talk salesforce mobile sdk
 
Xamarin in Microsoft Build 2018 - JXUG Fukuoka May-25-2018
Xamarin in Microsoft Build 2018 - JXUG Fukuoka May-25-2018Xamarin in Microsoft Build 2018 - JXUG Fukuoka May-25-2018
Xamarin in Microsoft Build 2018 - JXUG Fukuoka May-25-2018
 
Swiftyを試す
Swiftyを試すSwiftyを試す
Swiftyを試す
 
Ajax basic
Ajax basicAjax basic
Ajax basic
 
第4回REST勉強会 RequireJS編
第4回REST勉強会 RequireJS編第4回REST勉強会 RequireJS編
第4回REST勉強会 RequireJS編
 
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like databaseオフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
 
Xamarin.formsでのmvvm利用のコツ
Xamarin.formsでのmvvm利用のコツXamarin.formsでのmvvm利用のコツ
Xamarin.formsでのmvvm利用のコツ
 

More from Hironytic

DroidKaigi 2018報告会(公式アプリへのコントリビュート)
DroidKaigi 2018報告会(公式アプリへのコントリビュート)DroidKaigi 2018報告会(公式アプリへのコントリビュート)
DroidKaigi 2018報告会(公式アプリへのコントリビュート)Hironytic
 
DroidKaigi 2018報告会(はじめてのKotlinハンズオン)
DroidKaigi 2018報告会(はじめてのKotlinハンズオン)DroidKaigi 2018報告会(はじめてのKotlinハンズオン)
DroidKaigi 2018報告会(はじめてのKotlinハンズオン)Hironytic
 
DroidKaigi 2018報告会(会場の風景)
DroidKaigi 2018報告会(会場の風景)DroidKaigi 2018報告会(会場の風景)
DroidKaigi 2018報告会(会場の風景)Hironytic
 
Firebaseの新しいデータベース
Firebaseの新しいデータベースFirebaseの新しいデータベース
Firebaseの新しいデータベースHironytic
 
CocoaPodsのはなし
CocoaPodsのはなしCocoaPodsのはなし
CocoaPodsのはなしHironytic
 
Heroku+MongoLabでダミーサーバー
Heroku+MongoLabでダミーサーバーHeroku+MongoLabでダミーサーバー
Heroku+MongoLabでダミーサーバーHironytic
 

More from Hironytic (6)

DroidKaigi 2018報告会(公式アプリへのコントリビュート)
DroidKaigi 2018報告会(公式アプリへのコントリビュート)DroidKaigi 2018報告会(公式アプリへのコントリビュート)
DroidKaigi 2018報告会(公式アプリへのコントリビュート)
 
DroidKaigi 2018報告会(はじめてのKotlinハンズオン)
DroidKaigi 2018報告会(はじめてのKotlinハンズオン)DroidKaigi 2018報告会(はじめてのKotlinハンズオン)
DroidKaigi 2018報告会(はじめてのKotlinハンズオン)
 
DroidKaigi 2018報告会(会場の風景)
DroidKaigi 2018報告会(会場の風景)DroidKaigi 2018報告会(会場の風景)
DroidKaigi 2018報告会(会場の風景)
 
Firebaseの新しいデータベース
Firebaseの新しいデータベースFirebaseの新しいデータベース
Firebaseの新しいデータベース
 
CocoaPodsのはなし
CocoaPodsのはなしCocoaPodsのはなし
CocoaPodsのはなし
 
Heroku+MongoLabでダミーサーバー
Heroku+MongoLabでダミーサーバーHeroku+MongoLabでダミーサーバー
Heroku+MongoLabでダミーサーバー
 

RxSwiftのデータバインディングだけ