Redux 的源码实现非常精要,只有 400 余行代码,其强大之处在于结合了 middleware 机制和 Observable 机制,给拓展 Redux 带来无限可能。

因此阅读 Redux 的源码只是非常初级的一步,需要结合大量的应用场景去探索 redux 在该场景下的最优解决方案,并不断学习别人对解决方案的总结(如 react-redux、redux-thunk、redux-form、redux-ui 等等),才能理解单向数据流这种软件架构。

所以复杂的是应用场景和对应场景下的解决方案,理论的根源来自对单向数据流的理解,而 Redux 的思路和实现永远是最简洁而清晰的,它几乎不帮你做任何事情,因为要尽量降低对你的任何奇思妙想造成的阻碍。