【发布时间】:2014-02-09 16:49:05
【问题描述】:
我正在用 C# 开发一个游戏,但我对正确的面向对象设计有点困惑。
游戏中有3D空间中的节点:
public class Node {
public Vector3 Position;
public Vector3 Size; // etc
}
然后,存在具有节点数组的路径。一个节点可以属于多个路径。路径具有与其每个节点相关联的一些数据(“元数据”)。问题是,路径的节点应该对其他类可访问,但相关的元数据应该保持隐藏。
对于节点和元数据具有不同访问修饰符的两个数组需要工作以保持它们同步。
将节点与元数据配对的公共包装器类型也不是最佳解决方案 - 包装器类型仅对路径有意义,因此不应该是公共的。
将私有数据关联到公共数组成员的更好方法是什么?
【问题讨论】:
标签: c# oop access-modifiers