08/08/27 17:22:46
singletonはsingletonっていうインスタンスは必ず一つなのが
保証されますよっていうパターンの概念なわけで、別に
staticなクラスの作りでsingleton的な扱いをすることもできるだろうけど、
ただそれが「singletonって全部staticなクラスとほとんど同じ」かと
言われればそりゃ違うって答えるだろう
概念の話とコードレベルの話だし質問がおかしい
ある程度有名なパターンだからsingletonってこういうもの、
という共通認識がプログラマにあるのがアドバンテージなわけであって
このクラスはsingletonだからインスタンスは唯一、とすぐ把握できるところを
オレオレsingleton概念で「これ俺なりのsingleton!インスタンスはナイっス!」
とか言われても困るわけで
Hoge::page() と Hoge::instance()->page() 云々も一緒で
要はそのクラスがどういう扱いなのかというのを認識するのに
singletonというパターンがあるよってだけの話であって
singletonだから絶対Hoge::instance()->page()な形ってわけでもないし
コードレベルの問題とはまた別の話かと