I am currently using the following conventions
- (id) initWithName:(NSString *) name;
+ (NSString *) aliasForName:(NSString *) name
- (void) method
- (void) methodWithApple:(NSString *) apple andOrange:(NSString *) orange
andMango:(NSString *) mango
- (void) statusWasChanged:(id)sender
Do you have a better style for the above methods?
Thanks
Coding Guidelines for Cocoa is a great resource for answering any naming convention questions. My answer is as much as possible based off of this.
Init Method
The init method looks good.
Class Method
The class method looks good.
Class methods can also be used to instantiate an instance of an object. In this instance, Apple’s API’s generally have the method start with the name of the class like
UIButton‘sbuttonWithType:method that has the signature:Instance Methods
Good resource for coding conventions for methods can be found under General Rules.
The following method should drop the
"and"s:The signature should look more like the following:
Delegate Methods
Lastly, I think there are a couple improvements that could be made on what appears to be a delegate method:
First improvement is to add the class name to the method.
Second improvement is to use
"DidChange"instead of"WasChanged".Third improvement is strongly casting the sender parameter. I don’t have documentation to support this, however all examples provided in the examples exude this behavior. Notice the
(NSBrowser*)senderand(NSWindow*)windowin the above code sample taken straight from the apple docs.With this in mind, the delegate method should look more like:
If the sender were a Person object it would look like:
A word of caution is that you shouldn’t always use “did” in delegate methods.