All names of these libraries / frameworks begin with the letter R / N or the sound is very similar; irritation guaranteed:
reaction / reduction | flux | ngrx | @ ngrx / shop | RxJS / ReactiveX | MVI | ....
Can anyone see this madness? I am trying to clarify, please help me if I am wrong:
Redux is a “predictable state container” for JavaScript applications and an easy implementation of Flux . Can I say: standard thread implementation for Angular2? (But there is also a great freeze video about redux without Angular2.)
Flux is the application architecture used by Facebook to create web-based client applications. It complements the components. (ReactJS) using a unidirectional data stream. But the flow is just a model, not an implementation.
React (ReactJS) is the main competitor to Angular2 (angular.io) , although it is more of a library than a structure.
Reactive Extensions for JavaScript (RxJS) is a reactive stream library that allows you to work with asynchronous data streams. It has the goal of a reactive manifest.
Angular2 has its own Reactive Extensions, and they are called Ngrx - reactive extensions for Angular2.
Then there is something like @ ngrx / store , which is RxJS state management inspired by Redux for Angular 2 application. Nam-a-daisy!
Alternatively, Flux André Staltz introduced the unidirectional <strong architecture architecture Model-View-Intent (MVI) based on RxJS Observables, which he uses as the basis for Cycle.js . Although Angular 2 takes the form of two-way data binding, it does not prescribe a data flow architecture. One of its selling functions is the non-specificity of the model and it will work with MVC or Flux architecture. Therefore, developers need to choose the appropriate template. → Source
angular reactjs redux rxjs ngrx
user2227400
source share