拥有许多Objective-c类别有缺点吗?

时间:2012-04-18 09:03:06

标签: objective-c premature-optimization objective-c-category

我们在Objective-c类别中有一些代码,我们希望在项目之间共享。我们可以采用(至少)两种方法:

  1. 将它们分为每个类别一个类别,称为UIView+SGBExtensions
  2. 然后通过使用将其放入许多不同的类别,例如: UIView+SGBLayoutUIView+SGBDrawing等。
  3. 我的直觉是与后者一起使用,因为它更具描述性,我们可以挑选。但是,我们的大多数应用程序都会包含大部分共享代码,所以我有点担心有很多类别可能会影响性能或应用程序大小。拥有许多Objective-c类别有缺点吗?

2 个答案:

答案 0 :(得分:3)

我认为差异可以忽略不计。在加载期间,可能需要更多步骤来迭代类别并添加其方法,而不是从单个类别添加方法。同样,如果类别有+load个方法,那就是几个方法调用而不是单个调用。就像我说的那样,可以忽略不计。

答案 1 :(得分:2)

我的直觉与你的直觉相同。以您的方式分离代码更易于维护。

在您的应用程序被证明在这些方面存在问题之前,我认为您不应该担心大小和性能。即便如此,也不要假设,衡量。对于它的价值,我非常确定性能和尺寸影响将接近于零。

相关问题