Ich muß sagen, daß ich ObjCs Funktionsnamen viel angenehmer finde als die in Java, einfach wegen der expliziten Parameterbenennung. Wenn man ObjC-Funktionsnamen als Sätze auffasst, anstatt als Verben wie in anderen Sprachen, machen sie viel Sinn.

Vergleichen wir mal, wie ein Beispielaufruf in verschiedenen Sprachen aussehen würde:
Code (Objective-C):
 
[nukeController launchMissile:missile atCity:city withPALKey:key]
 

Code (Java):
 
nukeController.launchMissileAtCityWithPalKey(missile, city, key)
 

Code (C):
 
launchNuke(controller, missile, city, key) // So würden die meisten C-Programmierer es wohl schreiben.
 


Ich finde ObjCs direkte Zuweisung doch recht angenehm.


Und Zustimmung bei "die APIs sind gut durchdacht". Objective-C hat eine hervorragende, gut dokumentierte API (zumindest, wenn man XCode benutzt).