我的问题:如何以更好的方式设计所描述的类而不担心数据完整性?
我有一个类 Player-Container 和 Player。Player-Container 或多或少是一个集中的播放器“数据容器”,用于许多线程,它们都具有指向此类的指针。TBB 库为只读和写入提供了锁定机制。我有一些伪代码来反映我当前的设计:
Class: Player-Container
Method: CreatePlayer, RemovePlayer , LoginUser, VerifyUser
Class: Player
Method: None its a pure data container
现在对我来说,我开发得越多,在“顶级容器”上拥有这些功能似乎是错误的,但我似乎没有解决这个问题,因为容器将确保我可以锁定对象,以便没有并行访问可以修改用户(例如,用户构建某些东西并发送此请求两次,资源减少两次而不是一次)。
我想拥有的:
Class: Player-Container
Method: CreatePlayer, RemovePlayer
Class: Player
Method: LoginUser, VerifyUser,....
我的问题,我如何实现这一点并且仍然保存数据完整性,我应该只使用 hash_map 作为“索引”并构建“播放器”级别锁定吗?有一些意见和建议会很酷。最让我烦恼的是 PlayerContainer 实际上需要了解很多关于 Player Class 的信息,如果我更改一个属性,我必须在 Container 中重新编码很多。
如果有什么不清楚的地方请询问。