On Dec 1, 2015, at 16:20 , Carl Hoefs <newsli...@autonomy.caltech.edu> wrote:

> The following seems to be working out for me.
> 
> #import "AppCommon.h"
> @implementation AppCommon
> + (AppCommon *)shared
> {
>     static AppCommon *shared = nil;
>     static dispatch_once_t token;
>     dispatch_once(&token, ^{
>         shared = [[self alloc] init];
>     });
>     return shared;
> }

Looks functionally perfect. 

PSA #1: I would encourage you avoid naming the method ‘shared’, indeed to avoid 
naming anything with a brief name that doesn’t say what it is. Even the 
argument that it’s easier to type isn’t good any more, since Xcode is going to 
autocomplete almost every name for you.

PSA #2: I can’t help mentioning that you can write all of this in Swift as so:

        class AppCommon {
                static let shared = AppCommon ()
        }

Sometimes, Swift really is Obj-C-but-better. ;)

_______________________________________________

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to