
244
|
Chapter 7, Help and Research
#63 Examine the IL Generated by Your Code
HACK
C# Project, your code is not compiled into machine code (as a nonmanaged
C++ application would be), but instead is compiled into IL. When your
application is run, the IL of your application is then compiled by the JIT
(just-in-time) compiler and turned into machine code. This machine code
can then be executed and your application can be run.
This is an extremely quick definition of how IL, the JIT com-
piler, and the CLR work together. If you have not already
read it, you owe it to yourself to read Applied Microsoft .NET
Framework Programming (Microsoft Press). This book cov-
ers how the internals of .NET function and is an essential
read for all .NET developers.
Most of the time, you don’t have to even think about the IL that your code is
compiled into, but sometimes being able to examine this IL can be very use-
ful. Among the many reasons to look at the IL generated by your code, you
may want to:
• Better understand what your code is doing
• Compare the performance of different coding approaches
• Compare the differences between various .NET languages
• Diagnose difficult bugs
In this hack, you will learn how to examine IL to compare two different
ways of performing the same action. The .NET Framework includes a large
number of different ways to do the same things. You can add strings
together using the normal addition ...