[webkit-dev] Pattern for singleton classes instance getters
Filip Pizlo
fpizlo at apple.com
Wed Jan 28 19:06:22 PST 2015
This is shorter: Class::singleton()
It's also more consistent with the rest of our style (we usually don't put "get" in getter names).
-Filip
> On Jan 28, 2015, at 6:11 PM, Maciej Stachowiak <mjs at apple.com> wrote:
>
>
>> On Jan 28, 2015, at 4:28 PM, Darin Adler <darin at 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 at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev
More information about the webkit-dev
mailing list