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
RxSwift on iOS
Search
Marin Todorov
January 27, 2017
Programming
4
4k
RxSwift on iOS
Slides from talk at dotSwift 2017. More discussion about the sample code at
http://rx-marin.com
Marin Todorov
January 27, 2017
Tweet
Share
More Decks by Marin Todorov
See All by Marin Todorov
Testing RxRealm with RxBlocking
icanzilb
0
500
Is RxSwift for me? @ try! Swift NYC
icanzilb
3
23k
(Appbuilders) Non-technical ways to be a better developer
icanzilb
3
770
Non-technical ways to be a better developer
icanzilb
1
380
What's in it after the Indiepocalypse is over?
icanzilb
1
2.7k
Easy Animation at Cocoaheads Copenhagen
icanzilb
3
280
Animations with Auto Layout
icanzilb
1
160
SpriteKit with Swift workshop
icanzilb
1
1k
Other Decks in Programming
See All in Programming
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
980
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
200
Model Pollution
hschwentner
1
180
猫と暮らすネットワークカメラ生活🐈 ~Vision frameworkでペットを愛でよう~ / iOSDC Japan 2025
yutailang0119
0
220
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
190
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
Чего вы не знали о строках в Python – Василий Рябов, PythoNN
sobolevn
0
160
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
340
Advance Your Career with Open Source
ivargrimstad
0
350
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
150
CSC509 Lecture 03
javiergs
PRO
0
330
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
2
460
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Building Adaptive Systems
keathley
43
2.8k
For a Future-Friendly Web
brad_frost
180
9.9k
Navigating Team Friction
lara
189
15k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
960
Faster Mobile Websites
deanohume
310
31k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Balancing Empowerment & Direction
lara
4
680
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Mobile First: as difficult as doing things right
swwweet
224
10k
Transcript
RxSwift on iOS dotSwift, Paris Marin Todorov
[email protected]
[email protected]
!
[email protected]
"
[email protected]
NSNotificationCenter closures delegates Grand Central Dispatch Selector(:) Dependency Injection
Array<String>
[email protected]
0 first 1 second 2 third
[email protected]
0 first 1 second 2 third 3 fourth ⛅
[email protected]
0 first 1 second 2 third 3 fourth
[email protected]
0 first 1 second 2 third Image Credit: NASA
Goddard Space Flight Center
[email protected]
Observable<Array<String>> 0 first 1 second 2 third 0 first
1 second 2 third 3 fourth 0 first 1 second 2 third 3 fourth 4 fifth
[email protected]
0 first 1 second 2 third 0 first 1
second 2 third 3 fourth 0 first 1 second 2 third 3 fourth 4 fifth
[email protected]
Observable<Array<String>> 0 first 1 second 2 third 0 first
1 second 2 third 3 fourth 0 first 1 second 2 third 3 fourth 4 fifth
[email protected]
Observable<Int> 130 301 17
[email protected]
Observable<ClickData> ClickData { pt: CGPoint(10, 200) nrOfClicks: 1 }
ClickData { pt: CGPoint(20, 160) nrOfClicks: 1 } ClickData { pt: CGPoint(100, 13) nrOfClicks: 2 }
[email protected]
marin Observable<String> filter length > 2 Observable<String> debounce interval
> 0.5s Observable<String> flatMapLatest Any Observable<NSData> map Array<Repo> Observable<Array<Repo>> map URLRequest() Observable<URLRequest> subscribe or bindTo orEmpty
[email protected]
[email protected]
[email protected]
RxSwift 1. Sync-like async code 2. With a functional aspect
3. Cross platform, tried and tested framework
[email protected]
We’re hiring
[email protected]
• Distributed Systems Eng. • JavaScript Engineer
• Product Manager • Sales Engineer • Account Executive • and much more! realm.io/jobs
[email protected]
Sample Code & Credits http://rx-marin.com Thanks: ɾAsh Furrow
ɾFlorent Pillet ɾJunior Bontognali ɾKrunoslav Zaher
[email protected]
Questions? Marin Todorov
[email protected]
www.realm.io @icanzilb