Saturday 1 December 2007

Silverlight 2.0

Most developers with an interest in Silverlight will already know that 1.1 is being rebranded 2.0 and that we have more details about what it will include thanks to ScottGu's announcement.

The change of version number makes a lot of sense. The inclusion of the .NET framework is hardly a minor upgrade. It was the announcement of Silverlight 1.1 that got me interested in Silverlight in the first place. I had no great desire to learn how to do everything in JavaScript that I already knew how to do in C#.

It looks like they're planning to add quite a lot more features in the next beta drop. Most importantly, they are providing controls like textboxes, checkboxes, radio buttons. Also we get more than just plain old Canvas for layout - we get grids and stackpanels. There are even progress bars, sliders and a GridView. This is great news. We will be able to focus on the behaviour of our applications rather than writing custom controls.

Even more impressively, it looks like they are bringing a lot more of the core functionality from WPF such as data binding and control templates in. This means that Silverlight could actually become a serious competitor to WPF in its own right.

The networking support has been enhanced, with the most notable improvement from my perspective being the ability to access resources from other domains, removing a rather awkward limitation  from the alpha release.

Finally, Scott hints at even more of the FCL being made available, with a particular improvement to the DOM integration. I'm guessing that all this means that the size of the installer for Silverlight 2.0 will have grown a bit. I want to go on record as saying I don't care. I think its absolutely amazing how much they have crammed into such a small space, but the more they put in there the better as far as I am concerned. 

There are only two disappointments for me. First: apparently we have to wait for this until the new year. Fair enough I suppose, as there is a lot of new stuff coming. But it does mean that if like me you have projects that use controls, then you may want to hold off until the beta is released to save you wasting time re-inventing the wheel.

Second, although they are planning to support Silverlight development in the Express editions, we must wait until next summer. Which is annoying for me, as I like to experiment with Silverlight at home. Still, I can't complain too much, as Silverlight 2.0 isn't even in beta yet, so I suppose I should cut them a bit of slack.

Anyway, credit to whoever at Microsoft thought up Silverlight 1.1/2.0. I think it's one of their best innovations since they came up with the idea of .NET in the first place.