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
RAC用クラス拡張の作り方
Search
Kenichi Yonekawa
July 28, 2014
Programming
2
2.9k
RAC用クラス拡張の作り方
ReactiveCocoa関西 LT
Kenichi Yonekawa
July 28, 2014
Tweet
Share
More Decks by Kenichi Yonekawa
See All by Kenichi Yonekawa
iOSアプリの設計とDependency Injection
yonekawa
22
16k
Fluxで複雑な状態の変化を予測可能にするiOSアプリ開発
yonekawa
9
19k
ネイティブアプリでもFluxしたい
yonekawa
0
2.1k
freeeモバイルチームの変遷と進化
yonekawa
0
7.4k
ReactiveCocoa Pitfalls at freee
yonekawa
2
830
Dive into Joybox
yonekawa
5
1.7k
Other Decks in Programming
See All in Programming
ECMAScript、Web標準の型はどう管理されているか / How ECMAScript and Web standards types are maintained
petamoriken
3
390
GoのIteratorに詳しくなってしまう
inatonix
1
200
オートマトン学習しろ / Do automata learning
makenowjust
3
130
KSPの導入・移行を前向きに検討しよう!
shxun6934
PRO
0
280
Kotlin 2.0が与えるAndroid開発の進化
masayukisuda
1
410
Pythonで改めて考える「クラス(class)」の使いどころ
os1ma
1
360
Perl 5 OOP機構30年史 - Perl 5's OOP Mechanism over the past 30 years
moznion
0
250
Developer Joy == Developer Productivity (really!)
hollycummins
1
220
Jakarta EE meets AI
ivargrimstad
1
500
GraphQL あるいは React における自律的なデータ取得について
quramy
11
3k
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
990
unique パッケージから学ぶ interning と weak reference @ Asakusa.go#3
karamaru
2
810
Featured
See All Featured
Building Your Own Lightsaber
phodgson
101
6k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.3k
A Modern Web Designer's Workflow
chriscoyier
691
190k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
3k
Practical Orchestrator
shlominoach
185
10k
The Mythical Team-Month
searls
218
43k
Navigating Team Friction
lara
183
13k
Music & Morning Musume
bryan
46
6k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
A Philosophy of Restraint
colly
202
16k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
36
2.1k
Optimizing for Happiness
mojombo
375
69k
Transcript
! RAC༻Ϋϥε֦ுͷ࡞Γํ @yonekawa
None
None
ษڧձͱ͔Ͱ͖Δ͍εϖʔε ͋Γ·͢
ؔ౦։࠵ΑΖ͘͠! ͓ئ͍͠·͢ʂʂ
ReactiveCocoaͷ ͍͍ͱ͜Ζ
FRPͱ͔MVVMͱ͔ ͪΖΜ͚ͩͲ
• [textField rac_textSignal] • [alertView rac_buttonClickedSignal] • [tableViewCell rac_prepareForReuseSignal] •
[imagePicker rac_imageSelectedSignal] • [object rac_liftSelector:withSignals:]
ΈࠐΈΫϥε͚ͷ ֦ு͕ॆ࣮ͯ͠Δ
αʔυύʔςΟϥΠϒϥϦͱ͔ ࣗ࡞ΫϥεͲ͏͢Δʁ
None
ΧςΰϦ࡞Ε͍͍Α
࣮ࡍʹ৭ʑ࡞ͬͯΈͨ
[SVProgressHUD rac_dismiss] SVProgressHUD͕dismiss͞ΕͨΒ(fade animation͕ ऴΘͬͨΒ)ൃՐ͢ΔRACSignalΛฦ͢
• NSNotificationCenterͷ rac_addObserverForNameͰNotification͕ ඈΜͩ࣌ͷRACSignalΛ࡞ • ͦͷsignalΛsubscribeNextͨ͠blockͷதͰ Γ༻ͷsubjectΛsendComplete͠ɺsignal Λdispose͢Δ
[NJKWebViewProgress rac_updateSignal] NJKWebViewProgressDelegateͷ webViewProgress:updateProgress:͕ݺͼग़͞ΕΔ ʹൃՐ͢ΔRACSignalΛฦ͢
RACDelegateProxy • initWithProtocolͰࢦఆͨ͠Protocolʹ४ڌ ͨ͠ProxyΦϒδΣΫτΛ࡞ • ProxyΦϒδΣΫτͷsignalForSelectorͰ selector͕ݺΕͨ࣌ʹൃՐ͢ΔRACSignalΛ ฦͯ͘͠ΕΔ
[UIButton rac_16shotSignal] 1ඵؒʹ16ճϘλϯΛ࿈ଧ͢ΔͱൃՐ͢ΔRACSignalΛฦ͢
https://github.com/ yonekawa/ RACSupportExamples