GuillaumeSalles / redux.NET

Redux.NET is a predictable state container for .NET apps. Inspired by https://github.com/reactjs/redux.
712 stars 86 forks source link

[Question] Could this be used as an equivalent to CQRS & Event Sourcing concepts? #42

Closed MarkPieszak closed 7 years ago

MarkPieszak commented 7 years ago

Huge Redux fan on the client-side, and recently have been reading up on Event Sourcing in combination with the entire CQRS concept on the .NET side.

That entire concept seems like lots of leg-work, and seems like a grittier version of Redux. I'm not sure if you're familiar with them, but couldn't we use Redux here instead of all that?

It seems like CQRS (command / query / responsibility / separation) is just the general philosophy of Redux itself, to separate and compartmentalize every action.

While the event sourcing, or having a History of the State of your application, is the entire Store concept inside Redux as well.

Just wondering what your thoughts are! @GuillaumeSalles Great work on this by the way, I hadn't even thought about bringing Redux to C# until the other day :+1:

Some people talking about this concept here as well (https://github.com/reactjs/redux/issues/351)

GuillaumeSalles commented 7 years ago

Hi Mark! Thanks for the kind words!

I see Redux as a front-end library that implements some CQRS / Event sourcing concepts. Historically, it seems that flux does not directly come from CQRS / Event sourcing but they both solve state related issues.

Redux documentation does reference to CQRS / Event sourcing : http://redux.js.org/docs/introduction/Motivation.html