.NET的Reflection API使用数组而不是索引器来访问类型的成员/方法/属性等有什么原因吗。?我理解添加集合对象类(如MemberInfoCollection
、MethodInfoCollection
等)的开销。但是,这些集合对象类可以按需实例化。设计原理是否只是"劝阻程序员不要使用Reflection,除非他们真的需要它"?
这些API是在.Net 1.0中创建的,它没有泛型。
他们不能只返回一个ReadOnlyCollection<MemberInfo>
,他们也懒得为需要返回的每个类型创建一个单独的类型化集合类。
(我没有这个信念的来源)