Singletonパターン
特定のclassのinstanceを1つしか生成できないように強制する
何が嬉しい?
cache用のclassを作りたいとか
cache用のinstanceが複数存在しているとどれが正規のものなのかわからなくなる
現代ではアンチパターンと言われている
Singletonパターンがやっていることはグローバル変数を作っているようなもの グローバル変数、グローバルな状態の悪さとだいたい同じ理由で良くない
test codeと相性が悪い
DI(という概念)の登場や、モダン言語機能などにより完全に不要になった 実装例
とてもかんたん
クラス内で自身のインスタンスを生成する
参考