RxCombine
CombineCocoa
Our great sponsors
RxCombine | CombineCocoa | |
---|---|---|
2 | 3 | |
1,021 | 1,607 | |
0.3% | 1.7% | |
0.0 | 0.0 | |
5 days ago | about 1 month ago | |
Swift | Swift | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
RxCombine
-
I recently started looking more into the Combine framework. I found these Interactive Marble diagrams of Rx Observables and wanted to share them. Unfortunately, the operators are not always the same for Combine but it is still good fun. Not sure how difficult it would be to replicate this.
The sad thing to notice is how many of the operators in RxSwift have no Combine equivalent. Fortunately, there is the RxCombine library so you can freely mix the two.
-
Combine from RxSwift - Highlights for smooth adaption
Since Combine only supports iOS 13 onwards, it may be a bit early for most of current projects to adopt. Nevertheless, it’s never too soon to learn new tech and start experimenting with it to get yourself comfortable and “relevant”. The framework itself is still under development and improvement, so don’t forget to check back in future WWDCs for any cool new updates. I hope this article inspires you to dive deeper and learn more about Combine. I would like to give my thanks to Donny Wals for his book Practical Combine, as well as all the resources listed in the References section for making this article possible. In the meantime, you can also check out RxCombine to discover the possiblities of bridging between the two frameworks. Have fun!
CombineCocoa
-
Is Combine the best way of keeping UI updated in UIKit?
There is also CombineCocoa library with couple of bindings for UIKit https://github.com/CombineCommunity/CombineCocoa
-
Textfield IBAction vs delegate
There is a CombineCocoa library available. I haven't use Combine much yet mainly because until recently, I had to support iOS versions previous to 13 and even now, there are several reactive operators that I use extensively that don't exist in Combine. CombineExt is slowly filling in the gaps though.
-
Combine from RxSwift - Highlights for smooth adaption
Backpressure is an advanced topic and as Apple keeps their implementations of publishers and subscribers private, the complexity of this management is hidden from developers. Understanding the principle of backpressure makes customization for publishers and subscribers possible. One particular use case for this is CombineCocoa by CombineCommunity, which makes integration of Combine when using UIControls much more convenient. However, Apple strongly encourages that developers use the built-in convenience publishers and subjects instead of implementing custom ones, so it is important to look for simple solutions before tempting to overengineer to avoid bringing complexity and potential bugs to your projects.
What are some alternatives?
rxswift-to-combine-cheatsheet - RxSwift to Apple’s Combine Cheat Sheet
CombineExt - CombineExt provides a collection of operators, publishers and utilities for Combine, that are not provided by Apple themselves, but are common in other Reactive Frameworks and standards.
OpenCombine - Open source implementation of Apple's Combine framework for processing values over time.
RxWebSocket - Reactive WebSockets
Moya - Network abstraction layer written in Swift.
AOperation - A Wrapper on NSOperation, which Makes using of NSOperation More Efficient
open-source-mac-os-apps - 🚀 Awesome list of open source applications for macOS. https://t.me/s/opensourcemacosapps
SwiftCoroutine - Swift coroutines for iOS, macOS and Linux.
Eureka - Elegant iOS form builder in Swift
CombineCoreBluetooth - A wrapper API for CoreBluetooth using Combine Publishers
MessageKit - A community-driven replacement for JSQMessagesViewController