DIにおけるリフレクション情報のキャッシュ(2
- .NETのリフレクション情報の取得処理は元々軽いので、キャッシュしても有意差はでない
- キャッシュのメリットがデメリットに相殺されている
ここ最近、Javaと.NETをいったりきたりしていたのですっかり忘れていたのだが、.NETは型に対してのメタデータをモジュールに埋め込んでいる訳で、処理コストが低い(速い)のは当たり前だ。※
まだ結論を出すには早いが、.NETの場合はリフレクション情報をキャッシュする意味は無さげ。
※当たり前だとは言うけど、実際に試してガッテンするまでは実感できないのも確か。そういった意味では実際に書いた意味はあったと思う。ITypeDescも現在の実装から、全てのメソッドを単純にTypeクラスに委譲するヌル実装を書けば以前のキャッシュ無しの状態に何時でも戻せるわけだし。例え再発明であっても、こういう積み重ねが知識ではなく経験のはず。