Code Std - initializers

Follow the practice of having and denoting "designated initializer"

Follow the practice of never calling getter or setter from within an initializer, especially the designated initializer. Instead, call or set the property directly using the underbar notation.

// in @interface
@property (...) SomeClass * myvar;

// in @implementation
//designated initializer
- (id)init
{
    self = [super init];
    if (self) {
        _myvar = someinitialvalue;
    }
}