"Class::unique()" is one of the known names for singletons

Yong Li
________________________________
From: Maciej Stachowiak<mailto:m...@apple.com>
Sent: ‎1/‎28/‎2015 9:11 PM
To: Darin Adler<mailto:da...@apple.com>
Cc: WebKit Development<mailto:webkit-dev@lists.webkit.org>
Subject: Re: [webkit-dev] Pattern for singleton classes instance getters


> On Jan 28, 2015, at 4:28 PM, Darin Adler <da...@apple.com> wrote:
>
> I like the economy of the smaller non-member function name; it seems overly 
> wordy to be constantly stating the class name as well as the nearly 
> meaningless word “shared”. I think the word “shared” is what I like least 
> about the member function approach.
>
> It had always thought that we used static member functions for this to 
> replicate the pattern from Objective-C, and it seems more idiomatic modern 
> C++ to use a free function for this kind of thing.
>
> Maciej’s point about Class::create() might be enough to convince me to change 
> my view, though; it’s hard to see any reason the same logic wouldn’t apply in 
> that case.

I would also find it acceptable to use free functions for all these cases. 
Mostly it bugs me for them to be different - the singleton case is rarer, so it 
seems odd to treat it as especially conciseness-worthy.

Yet another possibility is finding a better name than ‘shared’ for the 
singleton pattern function, but I don’t have any better ideas. 
Class::getSingleton() is more explicit but the extra verbosity doesn’t seem 
helpful to me.

Regards,
Maciej

_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to