我有一个有多个实例变量的类。我想通过课堂实现两个目的。我可能只将一些变量用于一个目的,有时同时使用两者。
这是一个更具体的例子。我想创建一个类,每次用户点击屏幕时,都会出现一个带有动画的狗精灵和猫精灵。如果再次点击,它们将继续执行不同的动画。但是,有时我只希望狗精灵出现和更新。在其他一些罕见的情况下,我希望在狗精灵出现后点击几下后猫精灵出现。
问题是:实例变量是否分配了太多内存?我非常关心性能,因为我正计划制作一款内存密集型游戏。由于很难预测我何时实际使用所有实例变量,我应该将它们分为两类吗?让我们划分可能的场景以获得更好的想法。
只有 Dog Sprite 被使用并且 cat sprite 永远不会出现:如果 cat 的实例变量留在一个类中,则保持不变。
狗精灵首先出现,然后猫精灵随后出现:两个精灵最终都会出现。可以分为两类,但有些方法是重复的,因为触摸推进逻辑和动画等方法是相似的。但是如果我们把它放在一个类中,可能会出现场景 1,这可能会在没有大量重复代码的情况下解决。
可能会发生其他事情,但问题已经在上面讨论过。从我的角度来看,这些是利弊:
一类方法
- 临
- 避免一些重复的逻辑
无需导入多个导致某些类似实例变量的标头
骗局
- 可能保留一半的实例变量未使用(包括 NSString、CCSprite、大量整数和浮点数、CCAnimation、CCLabelBMFont)
两级方法
- 临
- 更少的实例变量
以后可能继承类而不继承一些不必要的变量
骗局
- 部分逻辑复现
很难决定我应该使用哪个选项。任何建议都会很棒!先感谢您!
if (didHelp)
for (int x = 0; x < 100; x++)
NSLog(@"Thanks!");