1) Why are all (references) Objective-C pointers to objects? Why aren't there simple variables? (ie array NSArray = [[NSArray alloc] init];)
Think of an Objective-C object as an illustrious structure for a moment.
NSArray array; , . NSArray *array; , , .
, , , Objective-C . , ( , -retain - ).
Objective-C C , ++, C, *, .
, id , id . , Objective-C . Snow Leopard Objective-C, . , .
2) , ?
. ...
[anArray objectAtIndex: 5]
... ...
objc_msgSend(anArray, @selector(objectAtIndex:), 5);
... ....
- (id) objectAtIndex: (NSUInteger) anIndex;
... C...
id object_at_index(id self, SEL _cmd, NSUInteger anIndex) { ... }
, Objective-C - C, . , , " ":
NSLog(@"method %@", NSStringFromSelector(_cmd));