I never understood why Redux became so popular.
It basically tries to enforces a few old ideas, pure functions, message passing and immutability, with no help from the language, which results in verbose and ugly code.
`a.b = c` becomes `Object.assign({}, a, { b = c })`
and
`object.method(data)` becomes `store.dispatch({type: METHOD, data})` with the implementation code of the "object" being a huge "switch" statement.
If you want immutability, pure functions and message passing, then why not use a language that is build around them and make your life easier? Clojurescript maybe?
Also having a single store for all your data, definitely doesn't help with speed as a single event suddenly becomes an O(LogN) operation in the best case.
It basically tries to enforces a few old ideas, pure functions, message passing and immutability, with no help from the language, which results in verbose and ugly code.
`a.b = c` becomes `Object.assign({}, a, { b = c })`
and
`object.method(data)` becomes `store.dispatch({type: METHOD, data})` with the implementation code of the "object" being a huge "switch" statement.
If you want immutability, pure functions and message passing, then why not use a language that is build around them and make your life easier? Clojurescript maybe?
Also having a single store for all your data, definitely doesn't help with speed as a single event suddenly becomes an O(LogN) operation in the best case.