コンテンツへスキップ
uencoder

Singleton Pattern

シングルトンパターンは、クラスのインスタンスを一つに保ち、グローバルなアクセス点を提供するデザインパターンである。共有状態やリソース管理に使われる。

目的

設定、ロギング、コネクションプールなどのグローバルリソースのインスタンス生成を制御する。

メカニズム

private コンストラクタ+静的インスタンス+グローバルアクセスメソッドで構成する。スレッド安全性にはダブルチェックロッキングか静的初期化が必要である。グローバル状態を持ち、依存を隠し、テストしづらいという批判があり、シングルトンより依存性注入が推奨される。

ユースケース

  • グローバル状態の管理
  • リソースの共有
  • パターン設計

関連用語

References