https://facebook.github.io/flux/docs/in-depth-overview.html#...
https://facebook.github.io/flux/docs/in-depth-overview.html#...
I covered a lot of the history and thought behind Redux's design in my post "The Tao of Redux, Part 1: Implementation and Intent" [0] .
Sure, I'd agree that the terms are a lot to take in for a new learner, but claiming these were chosen or made up to make things more confusing is ridiculous. There was a lot of debate over exactly what terms to use during the development process [1] [2] [3], and it was ultimately decided that keeping the Flux-based terminology made the most sense at the time, because most people coming to Redux were familiar with Flux already. Obviously the dev landscape has changed since then, since nobody seems to remember that the original Flux concept existed, but the terms are now set in stone because we've been using them since the beginning.
[0] https://blog.isquaredsoftware.com/2017/05/idiomatic-redux-ta...
[1] "reducers": https://github.com/reduxjs/redux/issues/137
[2] "state", "store", "dispatch" : https://github.com/reduxjs/redux/issues/113 , https://github.com/reduxjs/redux/issues/137
[3] "actions" vs "events": https://github.com/reduxjs/redux/issues/384 , https://github.com/reduxjs/redux/issues/377 , https://github.com/reduxjs/redux/issues/891
The "store" is the object returned from `createStore()`, which has the `dispatch`, `getState`, and `subscribe` methods.
The store object contains your "state" value, which could be a simple number by itself, an array, an object, or whatever else you return.
Typically that top level value _is_ an object with other values nested inside of it, and _that_ is your "state tree". So, the "store" contains the "state tree", and they are not the same thing.