Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOS の Reactive 系ライブラリ
Search
Motoi Washida
February 25, 2016
Programming
1
930
iOS の Reactive 系ライブラリ
Rx Ja Night 2016 #1 (
http://connpass.com/event/25532/
) の LT
Motoi Washida
February 25, 2016
Tweet
Share
More Decks by Motoi Washida
See All by Motoi Washida
アプリのための「レイヤー化」アーキテクチャ / Droid Meetup 2019-03
wm3
0
2.5k
Material Design の社内勉強会を行った / Android Engineer Design 1
wm3
1
190
API仕様書から自前でコード生成して運用した話 / DroidKaigi 2018 Reject Conference
wm3
0
900
apply() 要らなくない?
wm3
2
1.4k
Firebase Analytics で 画像ロードのパフォーマンス を測定し、改善をした話
wm3
2
1.5k
Tunnel 社内勉強会 Swift の紹介
wm3
0
300
Other Decks in Programming
See All in Programming
bootcamp2025_バックエンド研修_WebAPIサーバ作成.pdf
geniee_inc
0
120
When Dependencies Fail: Building Antifragile Applications in a Fragile World
selcukusta
0
110
Cursorハンズオン実践!
eltociear
2
1.2k
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
1.2k
contribution to astral-sh/uv
shunsock
0
520
AI Agent 時代的開發者生存指南
eddie
4
2.1k
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
100
Range on Rails ―「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ
rizap_tech
0
6.7k
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
3
700
釣り地図SNSにおける有料機能の実装
nokonoko1203
0
200
NIKKEI Tech Talk#38
cipepser
0
180
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
530
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Scaling GitHub
holman
463
140k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
Rails Girls Zürich Keynote
gr2m
95
14k
Agile that works and the tools we love
rasmusluckow
331
21k
We Have a Design System, Now What?
morganepeng
53
7.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Six Lessons from altMBA
skipperchong
29
4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Building Applications with DynamoDB
mza
96
6.7k
Docker and Python
trallard
46
3.6k
Transcript
iOS ͷ Reactive ܥϥΠϒϥϦ ా ج @wm3 2015/2/25 Rx Ja
Night 2016 #1 LT
͍͖ͳΓͰ͕͢
JVM ܥݴޠͷ ͠·ͤΜ
શ෦ Swift ͷ
ͱ͍͏ͷ
ઌि༵͘Β͍ ʮ3Yؔͷษڧ͔͋ΔΒ͍͠ʯ ʮ໘നͦ͏ɻࢀՃ͍ͨ͠ʂʯ ʮ$POOQBTTΛݟͯΈΔͱʜʯ
ࢀՃͷԠืঢ়گ
70ਓͪ!? (࣌)
LT ͳΜ͔ ۭ͍͍ͯͨ
͡Ό͋ൺֱରͱͯ͠ iOS Λޠ͓͚͍͍͔ͬͯ!
☺
͍͍Ͱ͔͢?
None
Ͱ
܅
୭
ࣗݾհ !XN UXJUUFSଞ اۀ͚ͷ4/4ఏڙاۀۈ ϝοηʔδΞϓϦ࡞ͬͯͨ ॳΊʙ "OESPJEJ04όοΫΤϯυ +BWB
Λ୲ ཁશ෦ ࣄͰͷ ΞϓϦ։ൃॳΊͯ
ΞϓϦ։ൃମ੍ "OESPJEJ04ͷઃܭۃྗڞ௨ Խ ڞ௨ԽͷҰͱͯ͠3YΛ༻ ओʹ௨৴෦ ͪͳΈʹαʔόʔ3Y༻
Android ͱͷҧ͍ͱ͍͏؍Ͱ Swift Ͱͷ Rx पΓͷڥͷ
Swift ͷ Reactive ܥ ϥΠϒϥϦ
ϥΠϒϥϦ 3Y4XJGUʜ3YͷҠ২ 3FBDUJWF$PDPB 3"$ όΠϯσΟϯάܥϥΠϒϥϦ৭ʑ ˞ৄ͘͠ͳ͍ͷͰޠΓ·ͤΜ
RxSwift
3Y4XJGU 3Yͷ4XJGUҠ২൛ (JU)VCͷ3FBDUJWF9ཧԼ 3Y+BWBͱͱ͍ͯۙ"1*
3Y+BWB ຖඵ 1, 2, 3, ... ͱग़ྗ
3Y4XJGU ຖඵ 1, 2, 3, ... ͱग़ྗ
͍͍ͩͨಉ͡!
3Y4XJGU3Y+BWBͷڞ௨ ΦϖϨʔλʔ NBQ UISPUUMF PCTFSWF0O 4VCKFDU 1VCMJTI4VCKFDU
ҧ͍͋Δ
1. Variable
ྫ7BSJBCMF
7BSJBCMF #FIBWJPS4VCKFDUΈ͍ͨͳͷ ه๏͕ࣗવ $PNQMFUFE&SSPSΛฦ͞ͳ͍
2. Protocol Extension
Observable ʹ ͖ͳϝιουΛՃՄೳ
(Swift ࣗମͷػೳ͚ͩͲ)
ྫ'J[[#V[[ԋࢉࢠ
None
ྫ0QUJPOBM֎͠ ४උ
ྫ0QUJPOBM֎͠ ఆٛ
ྫ0QUJPOBM֎͠ ݺͼग़͠ nil ͕ subscribe ʹ͞Εͳ͍
ྫ0QUJPOBM֎͠ Τϥʔ
ศར
ෆศ ͳͱ͜Ζ
Swift
GC ͕ͳ͍
None
॥ࢀর NG
♻
ରࡦ
ʮશ෦ Dispose ͢Ε͍͍ ͡Όͳ͍ʯ
%JTQPTF#BH ղ์࣌ʹҰؾʹVOTVCTDSJCF͢ ΔͨΊͷόοά
None
໘ͳ͚ͩͱݴ͑ ͦͷ௨Γ
ReactiveCocoa
࣌ؒͳ͍ ൃද࣌ؒతʹ४උ࣌ؒతʹ…
ऴΘΓͰ͢