我的目标是能够根据时间戳和其他一些信息创建唯一的字符串。我将在整个代码库中多次执行此操作,因此代码重用性和可维护性意味着我应该腾出一个位置来执行此操作。
由于这个唯一的 ID 将始终存储到 NSString 中,因此我可以在 NSString 上创建一个类别来创建这个唯一的 ID...
NSString *uniqueString = [NSString stringWithTimestamp:timestamp andName:name];
或者我可以使用类方法创建一个自定义帮助器类来返回唯一的字符串...
NSString *uniqueString = [HelperClass stringWithTimestamp:timestamp andName:name];
创建辅助类通常不是更好吗,因为我可以将其导入其他项目并使用该方法,以及我可能创建的其他不相关的方法(轻松地将所有内容包含在一个文件中)?如果我使用类别,它们就会分散在一堆不同的文件中。
但这不可能是正确的,因为按照这种逻辑,很少需要类别,并且总是为包含这些辅助方法的项目创建一个辅助类......我一定错过了一些东西!
最佳答案
我会建议使用辅助类方法,因为唯一的 id 方法除了返回类型之外与 NSString 类没有任何关系。试想一下,将来如果你打算创建一个 NSInteger 作为唯一 id 那么这个方法将与 NSString 类没有任何关系。因此,辅助类是正确的方法。
关于ios - 我应该使用类别还是自定义帮助器类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29051211/