Reflector - My Favorite .Net Toy
Reflector is a utility program that you can use to examine any .Net assembly and look into the actual code. It has many uses and add-ins, but my favorite thing is to look into the Framework's implementation of various Classes and Methods. It is a great way to understand how certain functionality is implemented in the .Net Framework, how to use them efficiently, and also how to extend these functionality in the proper way.
For example, here is the implementation of IEnumerable.Cast<T> Extension Method:
As you can see, the implementation first checks if the passed in Collection is already an IEnumerable<T>, and if so, it avoids any further processing and returns the source cast as an IEnumerable<T>.
I am not sure who really created the Reflector. It is now acquired by Red Gate and being developed into a Visual Studio Integrated Tool that allows you to examine, debug and step through third party assemblies. The original Reflector is still available for free, so get it before Red Gate changes it's mind.
Posted on January 20, 2010 04:35 by
Haider