gpt4 book ai didi

clojure - 不可变数据结构 - 应用程序维护

转载 作者:行者123 更新时间:2023-12-03 13:42:33 25 4
gpt4 key购买 nike

我一直在阅读有关不可变数据结构的内容,并了解到更改检测已经变得很容易。我经常听说它使应用程序维护更简单,并提供了易于理解的编程模型。我需要帮助来理解它如何简化工作。

最佳答案

Clojure 社区已经接受了不变性,这令人大开眼界。我能做的就是将您发送到来源:Rich Hickey's essay on State和他的演讲The Value of Values 。 Rich 解释了如何将变量的概念分为三个不同的概念:身份、状态和值,帮助您对系统进行建模并对其进行推理。

归结为:在您的编程模型中,您应该只允许事物在您尝试建模的系统中发生变化时发生变化。否则,您将向不需要它们的模型添加移动部件(可变变量和对象)。这使得模型更难理解(特别是随着时间的推移),但几乎没有任何好处。

尽管阅读有帮助,但理解这一点的唯一方法是使用一种默认不变性的语言进行编程,直到你意识到你建模的大多数系统实际上只有少数东西会改变,而不是页面和页面可变变量。

关于clojure - 不可变数据结构 - 应用程序维护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28849390/

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