InfoWorld review: Microsoft Silverlight 4 vs. Adobe Flash 10.1
Silverlight challenges the RIA supremacy of Flash, Flex, and AIR with superior development tools and design tool integration
Microsoft Silverlight 4
The Silverlight platform includes the Silverlight developer runtime and SDK, which are supported on Windows Vista, Windows 7, Windows XP SP3, and Windows Server 2008, along with desktop and browser clients for Windows and Mac OS X. Silverlight 4 Tools for Visual Studio 2010 lets Visual Studio developers target Silverlight projects with WCF RIA Services templates, libraries, and tools for managing desktop (out-of-browser) apps. It also includes the F# Runtime for Silverlight and an update for Microsoft Visual Web Developer Express 2010, which is a separate but freely available tool for developing Silverlight and AJAX-based apps.
Microsoft also offers additional apps that enhance Silverlight creation. Expression Blend 4, like Adobe's Flash Catalyst, streamlines prototyping and threading together UI interactions. Expression Encoder 4 is a free tool for encoding audio and video content, although you'll need the Pro version for H.264 encoding and support for IIS Smooth Streaming.
Silverlight's impressive development tools are a cut above those for Flash, and Microsoft's user interface design tools are tightly integrated. However, an RIA platform doesn't stand on tools alone, and Silverlight is a step behind Flash in such areas as native codec support, digital rights management, and hardware support.
Improvements on the latter front allow Silverlight 4 developers to incorporate input from webcams and microphones into their apps and to support output to printers, although Silverlight's bitmap-based printing pales in comparison to Adobe's crisp vector-based implementation. Silverlight 4 also ushers in touch support for tablets and smartphones, a new addition to Adobe's offering as well.
Complementing Windows Media DRM 10, Microsoft's latest PlayReady DRM technology secures digital content streams and downloads to Silverlight clients. Like Adobe's Flash Access 2, PlayReady can manage subscriptions and rentals, and it can persist licenses on the client for offline access.
But the most important addition in the Silverlight 4 release is the comprehensive developer support added to Visual Studio 2010. Previously, Visual Studio lacked a design interface for Silverlight, requiring developers to bang out their own XAML (Silverlight's XML-based UI description language) or use Microsoft Expression Blend. In either case, it was a cumbersome process. Visual Studio's new built-in XAML designer lets you drag and drop GUI components into place, while it generates the code in the background. There's no need to pop back and forth between Visual Studio and Expression Blend.