加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

我应该用不可变数据结构表示数据库数据吗?

发布时间:2020-12-12 08:43:36 所属栏目:MsSql教程 来源:网络整理
导读:我目前在 Scala中编程,但我猜这适用于任何函数式编程语言,或者是适用于建议不变性并可与数据库交互的任何编程语言. 当我从数据库中获取数据时,我将其映射到模型数据结构.在功能性编程中,数据结构往往是不可变的.但数据库中的数据是可变的,所以我不知道我的模
我目前在 Scala中编程,但我猜这适用于任何函数式编程语言,或者是适用于建议不变性并可与数据库交互的任何编程语言.

当我从数据库中获取数据时,我将其映射到模型数据结构.在功能性编程中,数据结构往往是不可变的.但数据库中的数据是可变的,所以我不知道我的模型是否应该是可变的.一般来说,在这种情况下,什么是好的和公认的做法?

在马尔丁Odersky在Coursera的Scala课程之后,我记得他说的是:

It’s better to use immutable data structures,but when you want to
interact with the real world,it can be useful to use mutable data
structures.

所以,再一次,我想知道我该怎么办到目前为止,我的数据结构是不可变的,当我想要更新我的数据库中的记录时,这导致了很多样板代码.使用可变模型有助于减少锅炉板块?

(我已经问了a similar question which was quite specific to the technologies I use,但我对实际的答案不满意,所以我在这里概括一下.)

解决方法

无论是使用可变的还是不可变的数据结构,“与现实世界的交互”无关.这是一个经常重复的furfy,你很怀疑它是伟大的.

虽然这样消除垃圾通常更健康,但您可能对粗略的剥离感兴趣:
http://blog.higher-order.com/blog/2012/09/13/what-purity-is-and-isnt/

但是,我强烈建议您将其解除并继续前进.

在你的问题上,当你想对不变数据结构执行操作时,你说你有样板.事实上,在很大程度上解决了这个问题的理论非常完善.这是一篇关于Scala的文章:

http://dropbox.tmorris.net/media/doc/lenses.pdf

希望有帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读