-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
comparing to RX.NET #33
Comments
At the Moment: If you have a reactivity graph you will eventally run into things like the Diamond Problem. These Problems are solved out of the box in MemoizR (Signal implementations in general) where as with all the ReactiveX implementations these problems are not trivial to solve. MemoizR is built with async in mind from the start, RX.Net only added AsyncRx recently and it is not production ready as of now. Rx.Net preceeds async await and therefore is not optimized for the modern way of writing C#. There are a lot more advantages, like automatic/no subscription handling and all the problems that get solved from that. But the biggest advantages over RX.Net in my opinion are probably not quite objective. I think the code that results from using MemoizR is easier to read/maintain because it is a lot closer to the traditional structured programming concepts used in modern C#. In the frontend space Signals seem to win over rxjs. But MemoizR is a lot more than just a Signal implementation. It adds Declarative Structured Concurrency and Signal Operators which make it a lot more comparable to ReactiveX than the Signal implementations we see in the FE space. With MemoizR you can start simple and add complexity only as you need it. And a lot of the complexities are handeled out of the box. In conclusion: There are a lot less foot guns on the way compared to RX.Net |
Big advantages come from features that will be possible to implement with MemoizR that do not fit into the ReactiveX model. For example:
|
feels like with reactive programming, is there any advantages over it?
The text was updated successfully, but these errors were encountered: