指定したクラスのインスタンスが1つしか存在しないことを保証するための概念。 設定用の値を保持するために使用したりする。 Observer あるオブジェクトの内部状態の変化を別のオブジェクトで監視する概念。 次の2つのオブジェクトにより構成される。