Cocoaの日々情報局でも紹介された、ReactiveCocoa。
解説記事やサンプルコード、GithubでのIssueに対するコメントや、Stack Overflowでの作者自らの回答などをまとめています。
解説、サンプルコード
- ReactiveCocoa : NSHipster
- Objective-CのFunctional Reactive ProgrammingフレームワークReactiveCocoaを試してみる | CAPH TECH
- Cocoa Samurai: Basic MVVM with ReactiveCocoa
- clever/you - thoughts about mobile • ReactiveCocoa: First Impressions
実際のアプリでの利用例
- Brightcove iOS SDK Developer Documentation
- How I Wrote Vinylogue for iOS with ReactiveCocoa - twocentstudios
Libraries using ReactiveCocoa
- apparentsoft/ReactiveCoreData
- MattCBowman/ReactiveCoreBluetooth
- CodaFi/AFNetworking-RACExtensions
- stefanomondino/SMReactiveRestKit
- kastiglione/Parse-RACExtensions
- rizumita/Reactive-Evernote-SDK-iOS
- brightcove/brightcove-player-sdk-ios
- instructure/CanvasKit
Slides
- MVVM in iOS // Speaker Deck
- Reactive Cocoa Lightning Talk
- https://www.dropbox.com/s/wqhmf7iful182zq/ReactiveCocoa.key
- https://dl.dropboxusercontent.com/u/1137362/ReactiveCocoaPublic.key
- ReactiveCocoa NSSpain // Speaker Deck
- ReactiveCocoa at MobiDevDay 2013 // Speaker Deck
- ReactiveCocoa // Speaker Deck
- Better Code for a Better World // Speaker Deck
- kastiglione/ExpressiveReactiveCocoa
Videos
Repos
- jspahrsummers/GroceryList
- AshFurrow/C-41
- AshFurrow/FunctionalReactivePixels
- ReactiveCocoa/AnyWall
- seanhess/wizardwar
- garnett/MVVMExample
- andrewsardone/RACMobiDevDay
- twocentstudios/vinylogue
- Machx/MVVM-IOS-Example
- prabirshrestha/reactive-cocoa-playground
- joshaber/RACSignupDemo
- nicnocquee/RACExperiment
- rizumita/ReactiveSample
- dmitrym0/ReactiveCocoaRecipes
- lawrencelomax/ReactiveDemo
GitHub Issues
- How would you create an editable UITableView in ReactiveCocoa way?
- Implement "-takeUntilAndThenOneMore:" using existing operations?
- Delay between -repeat and -retry attempts
- MVVM guidance
- MVVM real world example
- Best design pattern for starting only one async operation and share signal result
- Feedback loop?
- Implementing -windowWithStart:close: using current operations?
- Sequencing with async network requests with DRY code
- Batched API responses
- Triggering reloadData on a tableview when a signal fires via rac_liftSelector:withSignals:
- Intercept error in OAuth flow
- Command which sends alternating YES/NO values
- How to obtain KVO old value using ReactiveCocoa 2.0 API?
- oneOf: operator to merge differently typed signals
- How to do feeds with AFNetworking and ReactiveCocoa?
- How to fetch network resource every sec avoiding congestion?
- Best practice for signals that capture completed/error operations
- Managing interdependence between two RACCommand's canExecute properties.
- Using signals to update UI after creating a remote resource
- Most RAC-ish idiom for this?
- Creating a simple timer replacement
- Confusion about sequencing async signals...
- Better pattern for this code snippet
Stack Overflow
- Splitting an RACSignal to eliminate state
- Dependency Inversion / Injection? - Networking code in model classes - Code Review Stack Exchange
- How to using ReactiveCocoa to transparently authenticate before making API calls?
- Stop publishing when there are no subscribers and auto start when there are subscribers
- When to use RACReplaySubject vs. RACMulticastConnection?
- How do I create a ReactiveCocoa subscriber that recieves a signal only once, then unsubscribes/releases itself?
- Chaining dependent signals in ReactiveCocoa
- How do I get the "old value" from a ReactiveCocoa signal?
- Perform action on the hour, every hour, with ReactiveCocoa
- How to conditionally buffer RACSignal values?
- Remove a ReactiveCocoa signal from a control