Jul 30, 2012

Difference between .NET 2.0/3.0/3.5 Framework


NET framework 2.0:

It brings a lot of evolution in class of the framework and refactor control including the support of

Generics
Anonymous methods
Partial class
Nullable type
The new API gives a fine grain control on the behavior of the runtime with regards to multithreading, memory allocation, assembly loading and more
Full 64-bit support for both the x64 and the IA64 hardware platforms
New personalization features for ASP.NET, such as support for themes, skins and webparts.
.NET Micro Framework


NET framework 3.0:
Also called WinFX,includes a new set of managed code APIs that are an integral part of Windows Vista and Windows Server 2008 operating systems and provides

Windows Communication Foundation (WCF), formerly called Indigo; a service-oriented messaging system which allows programs to interoperate locally or remotely similar to web services.
Windows Presentation Foundation (WPF), formerly called Avalon; a new user interface subsystem and API based on XML and vector graphics, which uses 3D computer graphics hardware and Direct3D technologies.
Windows Workflow Foundation (WF) allows for building of task automation and integrated transactions using workflows.
Windows CardSpace, formerly called InfoCard; a software component which securely stores a person's digital identities and provides a unified interface for choosing the identity for a particular transaction, such as logging in to a website


.NET framework 3.5:

It implement Linq evolution in language. So we have the folowing evolution in class:

Linq for SQL, XML, Dataset, Object
Addin system
p2p base class
Active directory
ASP.NET Ajax
Anonymous types with static type inference
Paging support for ADO.NET
ADO.NET synchronization API to synchronize local caches and server side datastores
Asynchronous network I/O API
Support for HTTP pipelining and syndication feeds.
New System.CodeDom namespace. 

there were not major changes in .NET version 1.0, 1.1, and 2.0 besides fixing bugs, add new minor features, and better design and tools in Visual Studio 2005. Technologies that were part of .NET 1.0 - 2.0 were Windows Forms, ADO.NET, ASP.NET. 

But major changes came in .NET 3.0 when WPF was introduced. .NET 3.0 was short-lived due to many problems and inconsistencies but version 3.5 came with major fixes and improvements. It runs with Visual Studio 2008 and 2010. In .NET 3.5, besides Windows Forms, ADO.NET, ASP.NET, Web Services, .NET Remoting, we have new technologies including WPF, Silverlight, LINQ, WF, and WCF.

Now we have .NET Framework 4.0. .NET Framework is much improved version of .NET 3.5. 


Dynamic Keyword


After the introduction of "var" in C# 3.5, the use of anonymous types increased rapidly. But as C# doesn't truly supporting the dynamic types, which means the types will be determined during the runtime and any error that is produced will not affect compilation of the project, there were lots of limitations. var is determined during compile time, and it is implicitly typed variable so it cant be a return type of a method. dynamic on the other hand can be a part of return type or argument of a method and will act during runtime when actual object is set to it. 




No comments:

Post a Comment