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

在groovy中序列化闭包

发布时间:2020-12-14 16:28:15 所属栏目:大数据 来源:网络整理
导读:我正在Groovy开发游戏,我正在考虑广泛使用闭包来使架构更清洁. 例如,要实现状态效果(例如中毒),Player对象将具有执行每个游戏回合的闭包列表.保存游戏时必须将这些序列化. 将闭包存储在需要序列化的对象中通常是个好主意吗?或者我应该选择更传统的架构(例如
我正在Groovy开发游戏,我正在考虑广泛使用闭包来使架构更清洁.
例如,要实现状态效果(例如中毒),Player对象将具有执行每个游戏回合的闭包列表.保存游戏时必须将这些序列化.

将闭包存储在需要序列化的对象中通常是个好主意吗?或者我应该选择更传统的架构(例如存储StatusEffect对象列表)?

解决方法

有一个关闭执行每个游戏的闭包列表听起来像一个非常好的主意:-)

Serialising Closures是完全可能的.从Groovy 1.8.5开始,随着两个方法dehydraterehydrate被添加到Closures(以便在序列化之前可以剥离所有者,thisObject和delegate),它变得更容易了.

但是我在本机java序列化方面遇到了保存数据的问题.为了在系统之间发送短期数据,它可能很棒(但即便如此,我会看看protocol buffers或thrift)

考虑如果您需要更新游戏会发生什么?如果中毒影响中存在错误,则每个用其保存文件中的错误中毒闭包保存的用户将保留该错误,直到它消失为止.在多人游戏中,人们也可以操纵他们的保存游戏文件以给自己带来意想不到的或不需要的权力(因为权力本身的功能将存储在文件中).我可以看到操纵毒药影响所以它增加惠普而不是删除它们可能是有益的;-)

简而言之,我想我所说的是我会写出一个字符表,其中包含影响用户,库存,分数等的ID,然后在读入文件时检查并应用闭包.

(编辑:李大同)

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

    推荐文章
      热点阅读