gpt4 book ai didi

clojure - 在 Clojure 中重构时的结构正确性

转载 作者:行者123 更新时间:2023-12-02 14:31:53 28 4
gpt4 key购买 nike

如果我的项目使用形状为 {:firstName :lastName :address} 的“person” map ,并且我想将该形状更改为 {:name {:firstName :lastName } :address},我可以做什么来帮助确保我在使用这些对象的所有地方都进行了相应的更改?

在 Java 中,这很简单,因为我仍然拥有 person.firstName 的任何地方都会发出编译错误。在 Clojure 中,我可能甚至不会遇到运行时错误,而只是保存到服务器的错误数据。我认为不可能保证正确性,但是除了细齿梳之外还有什么?

最佳答案

Clojure 具有提供数据定义和验证的库。例如,您可以使用 https://github.com/Prismatic/schema

关于编译时错误与运行时错误的难度……好吧,这个问题并不是 Clojure 所独有的。引用 John Carmack 的话:“lisp 的挑战是让你的程序运行,Haskell 的挑战是让它编译。”

关于clojure - 在 Clojure 中重构时的结构正确性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30531451/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com