On Dec 5, 2008, at 7:55 PM, Jerry Krinock wrote:
I understand why this must be so, but it makes the dot syntax difficult to use in practice. When writing a message, I have to stop and think, "Gee did I declare that as a property or not?" If I'm not sure, and have to click to my documentation, it's faster to just put in the square brackets.

No -- the dot syntax is 100% orthogonal to the @property syntax. Entirely independent of each other.

The only requirement of the . syntax is that the type -- the class -- of the object on the left side of the . must be known and must contain a declaration specifying the type to be set or returned, either through @property or through traditional method declarations.

Also, it seems to me that that dot syntax makes more fragile code. For example, say that I declare a 'name' property. Then, next week I decide that I need a more granular name, so replace this property with a firstName and lastName property, and a -name accessor which concatenates firstName and lastName.

If I had accessed 'name' in other files using the square bracket syntax, everything is still OK. But if I had accessed it using the dot syntax, I now have dot abuse.

Not really. 'name' is still something that is an accessor type thing, regardless of whether it is derived or declared via @property()

"dot abuse" refers to expressions like:

foo.retain;
bar.lockFocusIfCanDraw;

That is, expressions where you aren't really asking the object to retrieve some value, but are more or less telling the object to do something and return a result.

And, yes, there are grey areas.

b.bum

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to