我开始学习设计模式。我知道原型是用来制作我已经拥有的对象的精确副本,而享元是用来制作类似的对象。
我已经编写了 2D 平台游戏,例如马里奥(Java)。有很多相同的敌人,唯一的区别是他们的位置[x,y]
。还有由大量矩形建造的墙壁,唯一的区别是它们的位置[x,y]
。
在这种特殊情况下使用其中一些设计模式是否明智?我应该使用原型通过可克隆然后设置来克隆对象[x,y]
吗?
使用享元是否更好 - 当我需要新对象时,我只需从我的哈希图中返回它们,然后设置 [x,y]?
在这两种情况下,我都避免使用 new 运算符,但我不确定使用哪一个。