Which version of .net framework to choose to work on? Let's say if you are creating an application and are familiar with .net 1.1 and all your application's functionality can be built on top of the .net 1.1 but voila there are newer versi开发者_如何转开发ons as well upto 4.0 so in this case which version you will choose to start with?
When it comes to desktop then you are not sure if the user have .net 3.5 or 4.0 installed but an ASP.NET application is all about generating HTML at the end. After all is it recommended to use the latest version of framework?
1.1 is definitely out dated and rarely supported. Most of the nuts and bolts of 1.1 can still be found in later releases. If you're starting a new project, I don't see why you shouldn't build on the latest release (providing your copy of VS can handle it). This makes you more relevant in the long run.
Besides the new features in 4 are wonderfully fun to mess around with. Try your hand at MVC for example... it's really great once you get the hang of it.
I usually encounter three cases:
Applications you use in an environment you can influence. For example your own server. Or the hosting solution you can use. In this case, you may choose the latest version of .NET Framework, unless you are really sure you will never use the new features.
Desktop applications or applications which target several customers. Here, it is better to be sure that 90% of your users/customers have already installed the required version of .NET Framework. Today, in July 2010, I would probably choose .NET Framework 3.5, since .NET Framework 4.0 is not widespread enough.
Applications which target a precise customer which may have outdated infrastructure. Sometimes, large companies still use .NET Framework 1.1 or 2.0 on Windows 2000. Because they are large, they will be unwilling to move thousands of computers to a new version just to use your product, so you must use the version they have.
.Net comes as a free update for windows. I think it's good to develop applications on latest .net version.
As long as you control your server environment, there is no downside to creating new web apps with the latest version.
Not sure about WinForms apps. Just yesterday I installed a new utility on a user's machine (that I had written for in-office use) and had to wait through a huge download/install. But on a non-corporate application that's less worrisome.
The right version is the newest version your company will allow. Each version offers substantial improvements over the previous.
If you can convince your company to upgrade, do it.
My belief is that at the very minimum you should be look at 2.0 and above. Anything after 2.0 is additional functionality to the core and you shouldnt be using anything below this. As a developer I believe that you should use the newest version possible as Microsoft puts a lot of effort (and invests a lot of money) to add new features to the framework.
I understand that from a management point of view it is not always easy to justify moving to the latest and greatest but realistically you're not rewriting your codebase when you update to a newer version - for older (2.0) applications you can just convert your project and voila - you suddenly have access to a lot of features you didnt before.
Organizations must remember that their code is an asset like any other and requires regular maintenance. Updating frameworks is part of the evolution of your applications and is a valuable (and relatively small) investment.
Since I understand you're talking about web application, I won't involve opinions on desktop applications which the conclusions should be then different.
Beyond .NET 2 is truly obsolete.
For 2 and up, consider the application's host costs, because the new frameworks (3.5sp1, 4) might cost more to host.
But there is no doubt that the newer the framework is the less code you have to write.
Especially if you right in VB.NET, than VB10 (.NET 4) is extremely featured regarding its prior version.
精彩评论