.NET & Funky Fresh



  • <script type="text/javascript" src="http://ws.amazon.com/widgets/q?ServiceVersion=20070822&amp;MarketPlace=US&amp;ID=V20070822/US/bluspiconinc-20/8001/8b68bf4b-6724-40e7-99a5-a6decf6d8648"> </script>
Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
.NET 3.0 Crash Course – Part 1: Introduction

     Over the past month or so I’ve had the privilege of giving a presentation titled “.NET 3.0 Overview and Key Concepts” to several groups.  The main idea of this presentation was to help people get familiar with the capabilities of the new technology and have a better understanding of how it would benefit them in their present and future projects.  In preparation for the talks, I assembled a great deal of information that was difficult to find all in one place and organized it in a meaningful way.  I found most attendees to be excited about the topic and I certainly learned a great deal in the process as well, which is what leads me to this post.  I have decided to do a series based on (and extending) the content of my original presentation.  It is my hope that after completing this we will all have a better understanding of .NET 3.0 and be creatively inspired to seek out new solutions to our common (and uncommon) software problems.

     Let us begin by asking the fundamental question:  What is .NET 3.0?  With the plethora of acronyms and name changes coming out of Microsoft lately, the answer to this question can be more difficult than it seems.  The following is a standard diagram of .NET 3.0, and should help to explain the answer.

.NET 3.0 Diagram

     At the bottom of the diagram is the CLR, as you would expect.  What is important to note is that it is the same version of the CLR that accompanies .NET 2.0.  In fact, .NET 3.0 is a true superset of .NET 2.0, meaning that it also contains the same class libraries (as indicated by the second level of the diagram).  What is different in 3.0 is that an additional set of class libraries have been added, mainly in four major areas.  These libraries were previously known as WinFX:  Windows Presentation Foundation (formerly Avalon) is a new API for building Windows UIs;  Windows Communication Foundation (formerly Indigo) is an API that creates a consistent way of authoring connected applications of all sorts; Windows Workflow Foundation enables workflow powered applications; Windows CardSpace (formerly InfoCard) is an identity solution for the internet.  We’ll talk about each of these technologies in greater depth in upcoming articles.  There are a few other things that are included in the package that don’t necessarily fit into these four boxes neatly: Xaml, the speech API and XPS documents.

     In cutting through the confusion of .NET 3.0, it is equally important to know what it is not.  Version 3.0 uses the same language compilers as 2.0 and thus does not include C# 3.0 or VB 9.0 language features.  This is confusing, but true.  It follows then that 3.0 also does not include LINQ, ADO.NET vNext or WinFS, which no longer exists.  Many of these technologies are related to a future version of VS and the version of .NET to follow 3.0.  So, when we talk about .NET 3.0, we generally mean the four pillars mentioned above.

     If you want to work with .NET 3.0 there are a few things you are going to need.  First off, 3.0 was designed to work on Vista, XP (SP2) and Server 2003 (SP1).  Anyone of these OS’s and the .NET 3.0 runtime will allow you to run applications built with the technology.  You can get the current version of the runtime (RC1) here.  Installing the runtime will add .NET 2.0 if you don’t have it and if you do, it will just add the new assemblies (marked with a 3.0 version designation).  I’m guessing that most of you will want to do some development; for that you will need a few more things.  Necessities are a version of VS2005 and the Windows SDK, found here.  (Watch out!  The download size is rather large.)  If you want to have a more pleasant development experience, you should install the VS2005 extensions here and the workflow extensions here.  Once you get up and running with these pieces I recommend you explore the official site a little bit.

     I hope this adds a bit of clarification as to what .NET 3.0 is.  Please post any questions that you have.  I anticipate doing at least twenty parts in this series, covering the main ideas from each of the four pillars.


Posted 09-22-2006 12:47 PM by Rob Eisenberg
Filed under: , , , ,



Kenneth Verburg wrote re: .NET 3.0 Crash Course – Part 1: Introduction
on 09-24-2006 9:17 AM

Boy, could they make it any more confusing? Great introduction. Looking forward to the rest of the series :)

KCorax wrote re: .NET 3.0 Crash Course – Part 1: Introduction
on 09-30-2006 6:33 PM

I'm slightly confused. Is Vista supposed to be a prequisite to running the .net 3 runtime ? If ' $last == yes ' then given the availability of the SDK that runs on XP isn't this a shameless attempt in part of Microsoft to hoarde money ?

Rob Eisenberg wrote re: .NET 3.0 Crash Course – Part 1: Introduction
on 10-01-2006 5:11 PM

Vista is not a prerequisite for running .NET 3.0.

Mark Brackett wrote re: .NET 3.0 Crash Course – Part 1: Introduction
on 11-15-2006 3:57 PM

Just to clarify this statement: "3.0 also does not include LINQ, ADO.NET vNext or WinFS, which no longer exists": The "no longer exists" comment applies only to WinFS. LINQ and vNext are alive and kicking.

About The CodeBetter.Com Blog Network
CodeBetter.Com FAQ

Our Mission

Advertisers should contact Brendan

Google Reader or Homepage

del.icio.us CodeBetter.com Latest Items
Add to My Yahoo!
Subscribe with Bloglines
Subscribe in NewsGator Online
Subscribe with myFeedster
Add to My AOL
Furl CodeBetter.com Latest Items
Subscribe in Rojo

Member Projects
DimeCasts.Net - Derik Whittaker

Friends of Devlicio.us
Red-Gate Tools For SQL and .NET


SmartInspect .NET Logging
NGEDIT: ViEmu and Codekana
NHibernate Profiler
Balsamiq Mockups
JetBrains - ReSharper
Web Sequence Diagrams
Ducksboard<-- NEW Friend!


Site Copyright © 2007 CodeBetter.Com
Content Copyright Individual Bloggers


Community Server (Commercial Edition)