clojure - :pre & :post defn conditions become obsolete after core.规范是否被引入?

标签 clojure clojurescript clojure.spec

我是 Clojure 的新手,乍一看,core.spec 做了 :pre & :post defn 条件用于 PLUS 的所有操作。

我知道 core.spec 是很晚才引入的(并且仍处于 alpha/beta 阶段),并且 :pre & :post defn 条件存在的时间要长得多 - 也许这就是为什么 pre/post 仍然不被视为过时方法的原因?

是否有 :pre/:post 提供的东西是我无法从 core.spec 获得的?

谢谢

最佳答案

很多人更喜欢 Plumatic Schema到 Clojure Spec(两者都有其优点)。 clojure.test.check也非常强大。

这里的要点是,上述所有内容仅适用(通常)运行单元测试时。当函数执行时,:pre:post 检查始终应用。

我喜欢的另一个工具是 Plumatic Schema函数验证。您可以找到similar (but better) functiontupelo.core/validate

关于clojure - :pre & :post defn conditions become obsolete after core.规范是否被引入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60909581/

相关文章:

clojure - aset 不在 clojurescript 中链接

clojure - 键*/具有内联值规范的键

Java 对象的 clojure.spec 自定义生成器

clojure - 如何制作自定义 clojure.spec 生成器?

clojure - 在 Clojure 中添加列表/序列中的项目

clojure - 使用 reagent 和 re-frame 时,如何在 crud 类型的应用程序中实现撤消和重做?

clojure - Clojure 中的面向方面编程

ClojureScript 格式字符串与 goog.string.format 不能替代

list - 使用列表值构成单个redis mget

linux - 为什么我需要 sudo 才能在 Linux 上使用 leiningen(安装在/bin 中)?