Building on a successful approach, the .NET assembly model is a simple and effective mechanism. Code can be incorporated with ease into an assembly that can then be accessed by client code. The Microsoft Visual C# 2008 Express Edition and the licensed version of this toolkit greatly simplify the process of managing assemblies. The facilities are sufficiently powerful that the programmer can learn about this interesting technology and also work on application issues.
Assemblies can contain a substantial amount of metadataversion numbers, localization details, product description, and so on. Perhaps most importantly, assemblies can be digitally signed to provide end users with a greater degree of confidence about the code origin.
Aside from the GUI facilities inside Microsoft Visual C# 2008 Express Edition, the useful command-line utility ildasm.exe allows you to peer inside an assembly and even look at the CIL code. What surprised me the most about all these capabilities was the ease with which non-specialists can execute such complex tasks. This level of toolset maturity allows programmers to move up the value chaina topic I've mentioned many times in other articles.