Ricky Tan of Microsoft’s MSDN Blogs hints at an RTM within two months for the new .NET Framework 3.0, and leaves us to wonder just what that means for the .NET Developers out there. For those of you that haven’t heard, Microsoft .NET 3.0 Framework is the new name for WinFX and .NET 2.0 bundled together.
Assuming you’ve read the links above, the obvious question is whether or not this is a good thing. If it were a simple announcement stating that “.NET 3.0 won’t RTM with Vista” we can tell you that the community would be in an uproar given Vista’s spotty track record. But this is actually really good news.
Developer Speak
For the developers, it means that Microsoft will have completed the WinFX API and accompanying documentation months before the RTM/actual release of Windows Vista, giving the developers plenty of time to warm up to all the new XAML and WinFX presentation features present in .NET 3.0, but more importantly than any of that is the creation of a final API/programming standard that will reliably run programs in the same way for builds to come.
The .NET Framework is not actually an API as much as it is a ‘communication layer’ that transforms specialized commands and arbitrary functions to low-level understandable sequences that the operating system then carries out. What all this means is, after .NET 3.0 RTMs, compatibility becomes Microsoft’s problem. I
If you have a program that runs on XP with .NET 3.0 RTM installed, you shouldn’t have to lose sleep wondering whether it’ll still work when Vista goes Gold – it will and that’s that.
The Framework itself provides all the functions and libraries needed for developers to create applications in WinFX, and is no more than a universal interface that devs can pass commands and parameters to, and the locally installed Framework engine ‘parses them into machine-understandable code.
It makes no difference how drastic the changes in Vista that take place between WinFX RTM and Vista RTM, the libraries will stay the same, and the only differences will be in the ‘engine’ that comes with Vista and how it translates the MSIL commands.
The Vista Enthusiast Report
OK, so it provides a stable and guaranteed programming space for Vista/WinFX devs; but I want to hear about Vista!
Assuming WinFX/.NET 3.0 actually RTMs within the next two months, the implications for Microsoft are pretty darn big. First is the obvious fact: it means Microsoft won’t be making drastic code changes – but we already knew that, it’s far too late now.
But it implies far more than something any middling apprentice psychic can tell you, it means a lot more. If Microsoft releases a Framework this early on, it could mean that certain user-interface components such as the various configuration wizards, welcome centers, and little scriplet odds and ends that make it look so good, can directly use this framework.
It means that for once Microsoft is looking ahead, and is providing for its customers and its own programmers & employees the tools they need to take advantage of Vista. It means that Microsoft has found its sales direction, and more importantly, knows exactly which components of Vista should be included in the .NET 3.0 libraries.
.NET 3.0 nearing RTM also means something very subtle but extremely important: compartmentalized code. This means that Vista has indeed been written cleanly and clearly if a majority of the UI code can just be shipped and ported to other systems via a separate platform this early on in the game. And it also means that the graphics subsystem is final – what you see in RC1 is what you are going to get.
More importantly than any of this is that WinFX/.NET 3.0 will be our first look at a code-complete section of Windows Vista. It’ll be a real opportunity to gage what kind of performance can be expected from Windows Vista and give us a glance at the kind of technology and innovation coming from the Microsoft camp.
All this, and .NET 3.0 isn’t even released yet! No matter what happens, good or bad, .NET 3.0 is a highly anticipated segment of Windows Vista, and it’s bound to give us a really good look at what’s to come…
Um, I hate to tell you this, but your whole “Developer Speak” section is incorrect. .NET *is* a bunch of APIs. All the other stuff you try to explain is just confusing and takes away from the point you’re trying to make.
The whole point is that APIs break, but the .NET Framework never has and never will. It’s an entire layer of future-proof coding protection.
And, just for the record, .NET isn’t an API the same way an SDK is – that’s just a DLL and puts the maintenance on the shoulders of the developers, but .NET takes that burden instead with Microsoft guaranteeing complete compatibility.