In Objective-C, while creating any class, how do we decide whether we need to mark a method as Class method or Instance Method ?
I know the difference between the 2, but my question is how to decide the marking (+/-) for any method ?
+ denotes a class method, - denotes an instance method. You create class or instance methods where your application needs them. Should you actually know the difference between the two, and your application, then you should have no problems understanding when to use which.
I believe you don't know the differences in how they apply to your application, so here's a small primer:
[[self class] someSpecialThing];self's class is usually reserved for factory methods. In my opinion, any time you have functionality that is bound to a specific type, and yet doesn't care about any specific instance, you should be using a class method.