在groovy中序列化闭包

在groovy中序列化闭包,第1张

概述我正在Groovy开发游戏,我正在考虑广泛使用闭包来使架构更清洁. 例如,要实现状态效果(例如中毒),Player对象将具有执行每个游戏回合的闭包列表.保存游戏时必须将这些序列化. 将闭包存储在需要序列化的对象中通常是个好主意吗?或者我应该选择更传统的架构(例如存储StatusEffect对象列表)? 有一个关闭执行每个游戏的闭包列表听起来像一个非常好的主意:-) Serialising Clos 我正在Groovy开发游戏,我正在考虑广泛使用闭包来使架构更清洁.
例如,要实现状态效果(例如中毒),Player对象将具有执行每个游戏回合的闭包列表.保存游戏时必须将这些序列化.

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

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

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

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

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

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

总结

以上是内存溢出为你收集整理的在groovy中序列化闭包全部内容,希望文章能够帮你解决在groovy中序列化闭包所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1231531.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存