引入core.spec后,defn的条件是否过时?

问题描述 投票:1回答:1

我是Clojure的新手,从我看到的core.spec看来,乍一看,它所做的一切:pre和:post defn条件都用于PLUS。

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

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

谢谢

clojure clojurescript clojure.spec
1个回答
1
投票

[很多人都喜欢Plumatic Schema而不是Clojure Spec(两者都有其长处)。 clojure.test.check也非常强大。

这里的要点是,在运行单元测试时,以上所有仅适用(通常)。函数执行时,:pre:post检查适用always

[我喜欢的另一个工具是Plumatic Schema功能validate。您可以在similar (but better) function处找到一个tupelo.core/validate

© www.soinside.com 2019 - 2024. All rights reserved.