.NET Framework Programming: Architecture, Usage and Advantages