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
17k
Fluxで複雑な状態の変化を予測可能にするiOSアプリ開発
yonekawa
9
20k
ネイティブアプリでもFluxしたい
yonekawa
0
2.2k
freeeモバイルチームの変遷と進化
yonekawa
0
7.6k
ReactiveCocoa Pitfalls at freee
yonekawa
2
840
Dive into Joybox
yonekawa
5
1.7k
Other Decks in Programming
See All in Programming
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
2.5k
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
1.2k
AWS で実現する安全な AI エージェントの作り方 〜 Bedrock Engineer の実装例を添えて 〜 / how-to-build-secure-ai-agents
gawa
8
690
Code smarter, not harder - How AI Coding Tools Boost Your Productivity | Webinar 2025
danielsogl
0
120
データベースエンジニアの仕事を楽にする。PgAssistantの紹介
nnaka2992
9
4.5k
複数ドメインに散らばってしまった画像…! 運用中のPHPアプリに後からCDNを導入する…!
suguruooki
0
470
メモリウォールを超えて:キャッシュメモリ技術の進歩
kawayu
0
1.9k
Building a macOS screen saver with Kotlin (Android Makers 2025)
zsmb
1
140
Devin入門と最近のアップデートから見るDevinの進化 / Introduction to Devin and the Evolution of Devin as Seen in Recent Update
rkaga
9
4.7k
エンジニア未経験が最短で戦力になるためのTips
gokana
0
260
Coding Experience Cpp vs Csharp - meetup app osaka@9
harukasao
0
730
海外のアプリで見かけたかっこいいTransitionを真似てみる
shogotakasaki
1
160
Featured
See All Featured
Statistics for Hackers
jakevdp
798
220k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
4.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
119
51k
Adopting Sorbet at Scale
ufuk
76
9.3k
How GitHub (no longer) Works
holman
314
140k
Documentation Writing (for coders)
carmenintech
69
4.7k
GraphQLとの向き合い方2022年版
quramy
46
14k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Optimising Largest Contentful Paint
csswizardry
36
3.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
30k
Agile that works and the tools we love
rasmusluckow
328
21k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2k
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