My Profile

Tuesday, January 18, 2011

Features of .Net

1. Language Independence :

The .Net framework introduces CTS & CLS, where CTS specification defines all possible data types and programming constructs supported by CLR and they interact with each other. Because of this feature the .Net framework supports exchange of instances of types between programs written in any of the .Net languages.

2. Base Class Library :

The BCL, part of FCL is a library of functionalities available to all languages using .net Framework. BCL provides classes which encapsulate a number of common functionalities.

3. Portability :

The design of .Net framework allows it to theoretically be platform independent and cross-platform compatible i.e., a program written to use the framework should run without change on any type of system for which the framework is implemented.

Microsoft's implementation of the framework covers only windows, in addition  it submits the specification for CLI which includes the core class libraries, CTS and CLS to both ECMA and ISO making them available as open standards, this makes it possible for third-parties to create compatible implementations of the framework to other platforms.

4. Simplified Deployment :

Installation of computer software must be carefully managed to ensure that it doesn't interfere with previously installed softwares and it confirms to stringent security requirements. The .Net framework includes design features and tools like setup & deployment that helps address these problems.

5. Common Runtime Engine :

Programming languages on the .net framework compiled into intermediate code known as CIL. In Microsoft's implementation this IL code is compiled in a manner known as Just-In-Time compilation into native code.

The JIT compiler is however responsible for converting IL code into native code and in this process it implements few optimization techniques like--

  •     Conversion gradually during the programs execution.
  •     Conversion of only necessary code.
  •     Storing of native code under volatile memory for next time use.

6. Memory Management :

It is the act of managing computer memory in its simple forms, this involves providing ways to allocate portions of memory to programs at their request and freeing it for reuse when no longer needed.

Management of main memory is critical to the computer system. In this process it uses garbage collection which is automated allocation and deallocation of computer memory resources for a program. This is generally implemented at programming language level and is in opposition to manual memory management. The explicit allocation and deallocation of computer memory resources.

In computer science, garbage collector (GC) is a form of automatic memory management. the garbage collector or "Just Collector" attempts to reclaim garbage or memory used by objects that will never be accessed again by the application. 

GC was invented by Jhon McCarthy around 1959 to solve the problems of manual memory management.

7. COM Interoperability :

Because interaction between new and older applications is commonly required, .Net framework provides means to access functionalities i.e., implemented in programs that execute outside the .Net environment. In this process it provides access to COM components in the "System.Runtime.InteropServices" and "System.EnterpriceServices" of the framework.

fig: Interoperability

Runtime Callable Wrapper (RCW) :

It exposes COM interfaces as a .Net interface to .Net applications.

COM Callable Wrapper (CCW) :

It exposes .Net interfaces as a COM interface to COM applications.


** If you like this post please like our page in facebook


Post a Comment


Twitter Delicious Facebook Digg Stumbleupon Favorites More