Microsoft has announced that it will release the source code for the .NET Framework with .NET version 3.5 later this year. Microsoft will release the code under its Reference License. This is essentially “read-only mode,” meaning that you can view the source code for reference and debugging, but you cannot modify or distribute the code. This is Microsoft’s most restrictive shared-code license and should not be confused with “open source” code such as Linux and the projects on SourceForge.Net.
Microsoft will begin by offering source code for the following .NET components:
- .NET Base Class Libraries (including System, System.IO, System.Collections, System.Configuration, System.Threading, System.Net, System.Security, System.Runtime, and System.Text)
- ADO.NET (System.Data)
- ASP.NET (System.Web)
- Windows Forms (System.Windows.Forms)
- Windows Presentation Foundation (System.Windows)
- XML (System.Xml)
Over time, Microsoft will share code for more .NET components, including Windows Communication Foundation (WCF), Windows Workflow, and Language Integrated Query (LINQ). In addition, Microsoft will integrate debugging support for .NET in Visual Studio 2008. The .NET code can be downloaded all at once or portions on demand.
Even though the .NET code won’t be open source, this is another important step forward for Microsoft as it continues to open up its proprietary empire under its Shared Source Initiative. This will benefit .NET developers by enabling them to debug their applications down into the framework and learn more about the inner workings of .NET. And the .NET Framework should hopefully benefit by having more developers review its code, find bugs and suggest solutions.