解决Clojure循环依赖
发布时间:2020-12-14 00:47:51 所属栏目:百科 来源:网络整理
导读:我正在研究一些Clojure代码,它在不同的命名空间之间有一些循环依赖关系,我正在努力解决最好的解决方法. 基本的问题是我在其中一个文件中得到一个“没有这样的var:namespace / functionname”错误 我试图“声明”该函数,但是它抱怨:“不能指向不存在的合格
我正在研究一些Clojure代码,它在不同的命名空间之间有一些循环依赖关系,我正在努力解决最好的解决方法.
>基本的问题是我在其中一个文件中得到一个“没有这样的var:namespace / functionname”错误 有什么想法吗?在Clojure中处理这种循环依赖的最佳方式是什么?
我记得在Clojure的一些关于名字空间的讨论 – 邮件列表和其他地方 – 我必须告诉你,协商一致(和AFAICT,目前Clojure的设计方向),循环依赖是一个设计的哭泣重构.解决方法可能偶尔是可能的,但丑陋的性能可能是有问题的(如果您使事情不必要地“动态”),不能保证永远无法工作.
现在你说圆形工程结构好,模块化.但是,为什么你会称之为如果一切都取决于一切…?而且,如果你提前计划一个树状的依赖结构,那么“每次你有依赖去解决”都不应该很频繁.为了解决您将自己的一些基本协议等等放在自己的命名空间中的想法,我不得不说,很多时候,我希望项目能做到这一点.我觉得我能够轻松地分析一个代码库,并且了解到它能够快速完成什么样的抽象. 总而言之,我的投票是重构. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |