Why can't I declare a variable like "newVariable" in Obj-C?
Declaring a property synthesizes two accessor (getter/setter) methods:
-(NSString*)newString;
-(void)setNewString:(NSString*)newString;
Objective-C has a naming convention for memory management that is enforced by the compiler. Methods that start with new
(also "alloc", "copy", "mutableCopy") are required to return an object that will be "owned" by the caller. See the documentation. The generated accessor method doesn't follow the rule.