Re: Private Methods
Re: Private Methods
- Subject: Re: Private Methods
- From: Alex Zavatone <email@hidden>
- Date: Tue, 18 Aug 2015 17:21:01 -0400
Well, the lack of adhering to that very principle was what caused my confusion with UIStoryboard the other day. None of the private methods followed this.
Sent from my iPhone
> On Aug 18, 2015, at 10:58 AM, Richard Charles <email@hidden> wrote:
>
> Apple documentation states that the "Names of most private methods in the Cocoa frameworks have an underscore prefix (for example, _fooData ) to mark them as private.”
>
> I just ran into a case where one of my method names in a subclass replaced a private Cocoa framework method of the same name causing my application to crash in the next version of OS X. The private Cocoa framework method name did not have an underscore prefix. So the documentation is correct, “most” but not all private methods in the frameworks have an underscore prefix.
>
> There is no way that I would have known about the private Cocoa framework method except examining a class-dump.
>
> Apple documentation also states that "If you are subclassing a large Cocoa framework class (such as NSView or UIView) and you want to be absolutely sure that your private methods have names different from those in the superclass, you can add your own prefix to your private methods. The prefix should be as unique as possible, perhaps one based on your company or project and of the form "XX_". So if your project is called Byte Flogger, the prefix might be BF_addObject:"
>
> I have never bothered doing this because for one reason BF_addObject looks so ugly as a method name.
>
> Does anyone prefix their private method names like Apple recommends when subclassing a large Cocoa framework class?
>
> Also why does Apple say "If you are subclassing a large Cocoa framework class”. What if I am subclassing a small Cocoa framework class. What difference would it make?
>
> --Richard Charles
>
>
> _______________________________________________
>
> 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
_______________________________________________
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