【问题标题】:Where can I find RxJS application design / architecture resources我在哪里可以找到 RxJS 应用程序设计/架构资源
【发布时间】:2019-10-03 21:55:26
【问题描述】:

我学习 RxJS 已经有一段时间了,虽然我有很多 api 文档和它的使用示例,但我正处于开始使用它构建一些应用程序的阶段。

问题是,无论我如何尝试,我似乎都找不到任何在线资源来讨论使用 RxJS 的应用程序的架构和设计决策。

例如,我应该将 RxJS 与通量系统 (redux) 一起使用还是单独使用,或者这是一个情境决定? 就像我正在制作一个基于回合的小型纸牌游戏一样,我是否应该有一个循环的流循环运行它,或者是否应该有外部代码,即“新游戏”功能,每次都会创建新的流作为起点,等等。

基本上是在实际项目中使用 RxJS 背后的想法、高级架构决策和理念。

有没有人知道这类事情的一些不错的资源。

为了清楚起见,我不想要 api 文档或解释 RxJS 是什么或它如何工作的文档,这不是我要寻找的信息。

【问题讨论】:

  • 如果您刚开始使用 RxJs,我不建议您构建自己的状态管理系统,除非它非常简单或者您有很多空闲时间

标签: web-applications architecture rxjs


【解决方案1】:

我发现这类信息非常分散,分布在许多博客、平台、播客等...Medium 也是查找此类信息的好地方。很多时候它是在框架的上下文中讨论的,例如:

我个人认为你有两个选择:

  1. 如果您使用 React/Angular 等框架,请使用状态管理库,例如。 Redux,NgRx。

  2. 使用行为主题实施您自己的状态管理解决方案。如何使用 Angular 和 RxJS 做到这一点是explained here。如果你使用 React 或 Vanilla JS 而不是 Angular,你可以构建类似的东西。

比如,我应该在通量系统 (redux) 中使用 RxJS 还是仅仅 自行决定,还是根据情况决定?

这是一个情境决定——对于较大的应用程序,我会使用状态管理库,因为它可以更好地扩展并允许通过Redux DevTools 更轻松地进行调试。

对于较小的应用程序,您可以只使用上面提到的 Behavior Subject 解决方案,它的优点是是一个更简单的解决方案,涉及更少的代码和更少的脑力开销。

如果我正在制作一个小型回合制纸牌游戏,我应该有一个 运行它的流的循环循环,或者应该有外部代码 即创建新流作为开始的“新游戏”功能 每次点等。

在我看来,应用程序的整个状态都应该通过您选择的任何状态管理解决方案来处理。例如。使用 redux,您的“新游戏”功能会再触发 1 个操作来重置游戏状态。

【讨论】:

  • tx,我去看看这个资源
猜你喜欢
  • 1970-01-01
  • 2014-02-05
  • 1970-01-01
  • 2013-08-27
  • 2011-05-09
  • 2010-09-12
  • 2019-06-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多