Objective c 在单例类中有额外的静态方法可以吗?
我用以下方法编写了一个单例类(objective-C):Objective c 在单例类中有额外的静态方法可以吗?,objective-c,singleton,static-methods,singleton-methods,Objective C,Singleton,Static Methods,Singleton Methods,我用以下方法编写了一个单例类(objective-C): //shared instance +(void) sharedInstance; //method to get all feeds. -(NSArray*)getAllFeedItems; 所以要使用它,我必须调用[[MyClass sharedInstance]getAllFeedItems] 现在,如果我定义一个静态方法,则不需要这样做: +(NSArray*)getFeedItems; 这反过来又实现了: +(NSArra
//shared instance
+(void) sharedInstance;
//method to get all feeds.
-(NSArray*)getAllFeedItems;
所以要使用它,我必须调用[[MyClass sharedInstance]getAllFeedItems]代码>
现在,如果我定义一个静态方法,则不需要这样做:
+(NSArray*)getFeedItems;
这反过来又实现了:
+(NSArray*)getFeedItems{
return [[MyClass sharedInstance] getAllFeedItems];
}
所以现在我可以简单地使用:[MyClass getFeedItems]代码>。这样做有什么不对吗?它是否会导致任何问题,或者是糟糕的编码实践?
对我来说,这只是使函数调用更容易。这个问题“主要基于观点”。这实际上取决于您的使用,如果您可能在某个时候授权不使用singleton,而是创建一个简单的实例。。。如果通过编写[[MyClass sharedInstance]doSomething]
来指定更具可读性,则会提醒您正在使用单例…@Larme,因为接收方是类对象,所以会提醒您。