On Wed, Jan 28, 2015 at 8:11 PM, Maciej Stachowiak <m...@apple.com>
wrote:
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.
I recommend Class::instance(), which is what I've seen used almost
exclusively outside of WebKit. It's what Scott Meyers used, and it's
very similar to the Gang of Four's choice of Class::Instance() and the
Java pattern Class.INSTANCE.
That said, Class::singleton() is very attractive too.
I've never seen Class::shared() used anywhere except WebKit. The first
time I saw this I had no clue what it was until I looked up the
implementation.
All of these can get quite annoying to type, especially when the name
of the class is long. (Sometimes I will keep a reference to the
instance in a local variable with a shorter name.) But I think they're
easier to read than free functions, and we should optimize for reading
code, not writing it. Not a big deal either way.
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev