Singleton なクラスをかいてみたい
ということで、AppRegistry というクラスを書いてみました。
といっても、これまた Perl の Pixis から拝借しただけ。
- Pixis -- Pixis-Registry
- http://github.com/lestrrat/pixis/blob/master/lib/Pixis/Registry.pm
あと、作ってみて?作る前から?分かったけれど、PHP では static 変数、static 関数をサポートしているので、Perl みたいに Class::Singleton などといった仕掛けを用意する必要はまったくないので、もはや何のクラスを作ったのかすら分からないものに。。。
コンストラクタを private として宣言するのがポイントくらい?
とにかく、これで複数のクラスにまたがって、同じインスタンスを共有するための仕組みを作ることができました。
わーい?
そんなわけで、最近は PHP の変な小物クラスや、ORマッパもどきなんかを書いています。
そのうち DBIx::Skinny っぽい何かを書いてみたいなー。