13.07.2015 Views

C# in Depth

C# in Depth

C# in Depth

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

A brief history of <strong>C#</strong> (and related technologies)21NOTEThe pioneer<strong>in</strong>g role of Microsoft Research—Microsoft Research is responsiblefor some of the new directions for .NET and <strong>C#</strong>. They published a paperon .NET generics as early as May 2001 (yes, even before .NET 1.0 hadbeen released!) and worked on an extension called Cω (pronounced Comega), which <strong>in</strong>cluded—among other th<strong>in</strong>gs—some of the ideas whichlater formed LINQ. Another <strong>C#</strong> extension, Spec#, adds contracts to <strong>C#</strong>,allow<strong>in</strong>g the compiler to do more verification automatically. 6 We willhave to wait and see whether any or all of the ideas of Spec# eventuallybecome part of <strong>C#</strong> itself.<strong>C#</strong> 2 was released <strong>in</strong> November 2005, as part of .NET 2.0 and alongside Visual Studio2005 and VB8. Visual Studio became more productive to work with as an IDE—particularlynow that refactor<strong>in</strong>g was f<strong>in</strong>ally <strong>in</strong>cluded—and the significant improvementsto both the language and the platform were warmly welcomed by most developers.As a sign of just how quickly the world is mov<strong>in</strong>g on—and of how long it takes toactually br<strong>in</strong>g a product to market—it’s worth not<strong>in</strong>g that the first announcementsabout <strong>C#</strong> 3 were made at the PDC <strong>in</strong> September 2005, which was two months before<strong>C#</strong> 2 was released. The sad part is that while it seems to take two years to br<strong>in</strong>g a productfrom announcement to market, it appears that the <strong>in</strong>dustry takes another year ortwo—at least—to start widely embrac<strong>in</strong>g it. As mentioned earlier, many companies areonly now transition<strong>in</strong>g from .NET 1.1 to 2.0. We can only hope that it will be a shorterpath to widespread adoption of .NET 3.0 and 3.5. (<strong>C#</strong> 3 comes with .NET 3.5, althoughyou can use many <strong>C#</strong> 3 features while still target<strong>in</strong>g .NET 2.0. I’ll talk about the versionnumbers shortly.)One of the reasons .NET 2.0 took so long to come out is that it was be<strong>in</strong>g embeddedwith<strong>in</strong> SQL Server 2005, with the obvious robustness and reliability concerns thatgo hand <strong>in</strong> hand with such a system. This allows .NET code to execute right <strong>in</strong>side thedatabase, with potential for much richer logic to sit so close to the data. Database folktend to be rather cautious, and only time will tell how widely this ability is used—butit’s a powerful tool to have available if you f<strong>in</strong>d you need it.1.2.4 “Next generation” productsIn November 2006 (a year after .NET 2.0 was released), Microsoft launched W<strong>in</strong>dowsVista, Office 2007, and Exchange Server 2007. This <strong>in</strong>cluded launch<strong>in</strong>g .NET 3.0,which comes pre<strong>in</strong>stalled on Vista. Over time, this is likely to aid adoption of .NET clientapplications for two reasons. First, the old “.NET isn’t <strong>in</strong>stalled on all computers”objection will become less relevant—you can safely assume that if the user is runn<strong>in</strong>gVista, they’ll be able to run a .NET application. Second, W<strong>in</strong>dows Presentation Foundation(WPF) is now the rich client platform of choice for developers <strong>in</strong> Microsoft’sview—and it’s only available from .NET.6http://research.microsoft.com/specsharp/Licensed to Rhona Hadida

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!