在clojure中有一种惯用的处理状态的方法吗?
我正在编写两个端点来管理一个调度程序,我使用它 我想让调度器实例在schedule、reschedule和unschedule函数中可见,最简单的方法是创建一个atom,但我想这不是防止代码发臭的最佳方法在clojure中有一种惯用的处理状态的方法吗?,clojure,global,state,Clojure,Global,State,我正在编写两个端点来管理一个调度程序,我使用它 我想让调度器实例在schedule、reschedule和unschedule函数中可见,最简单的方法是创建一个atom,但我想这不是防止代码发臭的最佳方法 我想知道clojure中是否有一种惯用的处理状态的方法?我相信,在代码中有一个atom是可以的,但是在其中存储尽可能少的数据,只存储那些真正需要更改的数据 你不能完全避免状态,原子在这方面很好。我相信,在代码中有一个原子是很好的,但是在其中存储尽可能少的数据,只存储那些真正需要更改的数据 你无
我想知道clojure中是否有一种惯用的处理状态的方法?我相信,在代码中有一个atom是可以的,但是在其中存储尽可能少的数据,只存储那些真正需要更改的数据
你不能完全避免状态,原子在这方面很好。我相信,在代码中有一个原子是很好的,但是在其中存储尽可能少的数据,只存储那些真正需要更改的数据
你无法避免完全拥有状态,原子就是最好的选择。一种常见的方法是使用像or这样的库来管理状态的生命周期和依赖注入 在这些情况下,你往往会得到一个包含相互关联状态系统的单个原子 根据我个人的经验,我使用石英岩和组件-我有一个调度器组件,可用于启动/停止/调度等
现在我更喜欢Integrant,并且会慢慢地将我的项目从组件转移出去。一种常见的方法是使用类似or的库来管理状态的生命周期和依赖注入 在这些情况下,你往往会得到一个包含相互关联状态系统的单个原子 根据我个人的经验,我使用石英岩和组件-我有一个调度器组件,可用于启动/停止/调度等 现在我更喜欢Integrant,我会慢慢地将我的项目从组件转移到组件