命名不带参数但可以返回错误的Objective-C选择器的最佳做法是什么?
示例(从网络获取音轨数据的方法):
- (NSData*) soundtrackData:????? error:(NSError**)error;
答案 0 :(得分:7)
怎么样
- (NSData*)soundtrackDataWithError:(NSError**)error;
答案 1 :(得分:2)
Apple使用Cocoa框架中的两种样式之一:
- (NSData *)soundtrackData:(NSError **)error;
e.g。 -[NSManagedObjectContext save:]
- (NSData *)soundtrackDataAndReturnError:(NSError **)error;
e.g。 -[NSURL checkResourceIsReachableAndReturnError:
似乎Apple现在更青睐新API的第二种风格,但要么是可以接受的。我喜欢第一种风格的简洁性,但第二种风格有一个很好的优势,你可以搜索error:
来查找代码中的所有方法并进行错误处理。