我应该将实用方法放在objective-c中?
例如,由多个类调用的其他路径处理实用程序方法.
我已经看到了将它们放在主appdelegate文件中的示例,因此可供所有人使用.然而,这对我来说似乎有点奇怪......
你有几个选择:
showAlertDialog().+[MyUtilities showAlertDialog].这是Java中静态实用程序类的最直接等价物,但它在Objective-C中有点笨拙.NSObject使所有对象都可以访问这些方法,但我强烈建议不要这样做(这可能会导致严重的可维护性问题).就个人而言,我使用了选项1和3的混合.当我的功能明显与特定的现有类绑定时,我使用类别.否则,我使用C函数.
是的,这很奇怪(而且是不好的做法)。
最常见的习惯用法可能是使用类别来扩展现有的系统类。在某些情况下,如果没有合适的系统类,有些人可能会创建一个主要由类方法组成的实用程序类,或者一个具有实例方法的单例类。
这取决于方法以及它们在整个应用程序结构中的位置(并且始终是事物背后的 MVC)。