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
TVer iOSチームの共通認識の作り方 - Findy Job LT iOSアプリ開発の裏側 開発組織が向き合う課題とこれから
techtver
PRO
0
710
💎 My RubyKaigi Effect in 2025: Top Ruby Companies 🌐
yasulab
PRO
1
130
"使いづらい" をリバースエンジニアリングする UI の読み解き方
rebase_engineering
0
110
Babylon.js 8.0のアプデ情報を 軽率にキャッチアップ / catch-up-babylonjs-8
drumath2237
0
110
List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate'"
philipschwarz
PRO
0
130
Reactive Thinking with Signals, Resource API, and httpResource @Devm.io Angular 20 Launch Party
manfredsteyer
PRO
0
130
primeNumberでのRBS導入の現在 && RBS::Traceでinline RBSを拡充してみた
mnmandahalf
0
250
コンポーネントライブラリで実現する、アクセシビリティの正しい実装パターン
schktjm
1
670
複雑なフォームを継続的に開発していくための技術選定・設計・実装 #tskaigi / #tskaigi2025
izumin5210
12
6.4k
バランスを見極めよう!実装の意味を明示するための型定義 TSKaigi 2025 Day2 (5/24)
whatasoda
2
780
Agent Rules as Domain Parser
yodakeisuke
1
340
技術的負債と戦略的に戦わざるを得ない場合のオブザーバビリティ活用術 / Leveraging Observability When Strategically Dealing with Technical Debt
yoshiyoshifujii
0
160
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
7k
Art, The Web, and Tiny UX
lynnandtonic
298
21k
Gamification - CAS2011
davidbonilla
81
5.3k
For a Future-Friendly Web
brad_frost
178
9.7k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
123
52k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Building Applications with DynamoDB
mza
95
6.4k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
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