めも帖

「めも帖」代わりにダラダラと書いていったり、めもしたりしているだけです。

Class::Singleton

Sledgeのconfigで、使用されている「Class::Singleton」というPM。
名前からだと、想像がつきませんでした。調べると、

というのが見つかるのですが、今のワタシにはピンときません。
そこで、「Singleton」というのを調べると、どうもデザインパターンの1つらしいことがわかりました。
Singletonパターンは、クラスが1つのインスタンスを持つ(生成する?)ことを保証するパターンらしいです。いろいろと読むと、グローバル変数のように使うな、とか使いどころの難しそうなパターンに思えるんですが、違うのかなあ。

Sledgeのconfigで使用されているのは、設定した値は、1つの環境に1つだけ、というのを保証したいから?と想像するのでした。