Features and Improvement in Base class libraries in Dot net framework 4.0


With the new version of DotNet Framework (.Net 4.0), Microsoft has introduced many new classes in the base class libraries. Below is a list of some of the new features and improvements in the Base class libraries in dot net framework 4.0

Code contract – A language agonistic way to express coding assumption have been added to the System.Diagonistic.Contract. The contracts take form of Post  and pre condition and object invariants. These are used to improve testing via runtime checking, static contract verification and documentation generation.

Parallel Extension – One of the most important additions to dot net framework 4.0 is addition of parallel extension for easier and better way to work easily and better in parallel environment and make use of the multiple CPU’s in the machine. The task parallel library, coordination data structures and Parallel LINQ (commonly known as PLINQ) have been added to the base class library.

BigInteger – Base class libraries have also been enhanced with the inclusion of an arbitrary-precision integer data type called BigInteger which resides in System.Numeric namespace. The bigInteger class will support all the basic integer operation.

Memory mapped files – Memory mapped files can be used to efficiently edit very large files and can also be used to create shared memory for inter-process communication.

Compression Improvement – In Dot Net framework 4.0 the compression Algorithm in System.IO.Compression has been improved to get better compression ratio for most of the cases. Also the limit of 4GB size for compression has been removed.

String Changes – The default partial matching overloads on System.String (StartsWith, EndsWith, IndexOf, and LastIndexOf) have been changed to be culture-agnostic (ordinal) by default.  In addition, ToUpper and ToLower on System.String and System.Char have been changed to use the invariant culture instead of the current culture.

This is not the complete list of changes but only a few changes made in the Dot Net framework 4.0 in the base class libraries.