Hatena::Groupcatalyst

dann@catalyst このページをアンテナに追加 RSSフィード

2008-03-08

 PerlのDIコンテナ - Bread Board

21:08 |  PerlのDIコンテナ - Bread Board - dann@catalyst を含むブックマーク はてなブックマーク -  PerlのDIコンテナ - Bread Board - dann@catalyst  PerlのDIコンテナ - Bread Board - dann@catalyst のブックマークコメント

http://search.cpan.org/~stevan/Bread-Board-0.03/

依存関係を設定するところが一箇所にまとまってしまうところが、ちょっといまいちかなぁという気がしました。Javaだと1世代前のDIコンテナにあたるかなと。

JavaのDIコンテナも、最初はこんな感じで、依存関係を設定するところが全てXMLで記述されていたんですが、これはとてもよくなかったなと思っていました。XMLだったのがよくなかったというのもあるんですが、依存関係を設定する部分が、実際の依存関係をインジェクトされる側との距離が遠すぎるというのが一番良くなかったなと思っています。

最近のDIコンテナは、依存関係のインジェクションが必要なクラスに、JavaのAnnotationでメタデータを記述するようになっているので、該当のクラスをみれば、どのようなものがインジェクトされるのか、インジェクトされるもののScopeが何なのかというのがすぐにわかるようになっています。

Annotaionは、PerlだとAttribteに近いのかもしれません。あんまり、Attributeのことをわかってないかもしれませんが...

# yappoさんの記事がわかりやすそうなので、後で見る。

http://blog.yappo.jp/yappo/archives/000348.html

まだ、0.03なので、どのような方向で進むかはわかりませんが、DIコンテナとして使うには時期尚早かなという気がしました。当面必要なのは、Configurationをフレームワークに依存しない形で参照すればいいだけなので、それでいこうかなと。

idudeiyacouidudeiyacou2019/07/05 16:08http://mewkid.net/buy-amoxicillin/ - Amoxicillin Online <a href="http://mewkid.net/buy-amoxicillin/">Buy Amoxicillin</a> dyd.ifmc.catalyst.g.hatena.ne.jp.yuq.xs http://mewkid.net/buy-amoxicillin/

iridubabeeiridubabee2019/07/05 16:28http://mewkid.net/buy-amoxicillin/ - Amoxicillin 500mg Capsules <a href="http://mewkid.net/buy-amoxicillin/">Amoxicillin Online</a> yxl.nwgj.catalyst.g.hatena.ne.jp.sak.lj http://mewkid.net/buy-amoxicillin/

トラックバック - http://catalyst.g.hatena.ne.jp/dann/20080308