Singletonパターン
特定のclassのinstanceを1つしか生成できないように強制する
何が嬉しい?
cache用のclassを作りたいとか
cache用のinstanceが複数存在しているとどれが正規のものなのかわからなくなる
現代ではアンチパターンと言われている
Singletonパターンがやっていることはグローバル変数を作っているようなもの
グローバル変数、グローバルな状態の悪さとだいたい同じ理由で良くない
test codeと相性が悪い
DI(という概念)の登場や、モダン言語機能などにより完全に不要になった
実装例
https://qiita.com/shoheiyokoyama/items/c16fd547a77773c0ccc1#singletonクラス
とてもかんたん
クラス内で自身のインスタンスを生成する
https://xn--97-273ae6a4irb6e2hsoiozc2g4b8082p.com/エッセイ/シングルトンパターンの誘惑に負けない/
参考
fukabori.fm 48 28:00~
「現代では不要」と@t-wada氏が言い切っている
https://qiita.com/tonkotsuboy_com/items/225d08e915a57777c9dc
https://zenn.dev/morinokami/books/learning-patterns-1/viewer/singleton-pattern