Re: The joys of people using valueForKey to get objects out of a dictionary.
Re: The joys of people using valueForKey to get objects out of a dictionary.
- Subject: Re: The joys of people using valueForKey to get objects out of a dictionary.
- From: David Duncan <email@hidden>
- Date: Tue, 10 Nov 2015 09:45:39 -0800
> On Nov 10, 2015, at 8:32 AM, Alex Zavatone <email@hidden> wrote:
>
> It's been about 4 or 5 years since I made this mistake but I've just seen a massive swath of code where every access of a dictionary object is using valueForKey instead of objectForKey.
>
> I've got a few examples of why this is a "really bad idea"™, and certainly might explain why lots of that code is wrapped in try/catch blocks.
>
> Am I correct that using valueForKey will raise an exception if the key is missing?
>
> Looking for reasons why I can explain "yeah, I know it works, but here's why it's a terrible idea to use to access a dictionary's objects".
>
> Thanks in advance.
I will note that the exception throwing behavior is implementation dependent - NSDictionary may not throw but I’ve had experience with other objects that do, and this may be the generic behavior on NSObject (I haven’t checked).
--
David Duncan
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden