News
Silverlight Transitions Continue for Developers and Microsoft
Metro fundamentals for Silverlight developers as Microsoft continues its shift to HTML/JavaScript and Windows 8.
If you haven't heard much about Silverlight lately, a few things have popped up in recent weeks that shed some light on Microsoft's vision for the technology and how to move forward.
VSM contributor Michael Crump, a Silverlight MVP and Telerik XAML evangelist, participated in a Webinar on the silverlightshow.net last week that covers "10 Things Silverlight Developers Should Know about Windows 8." Crump noted at the start of his talk, which lasts about an hour, that he frequently runs into people, who say, "I'm a Silverlight developer, now what?"
Silverlight developers can still build and deploy apps on Windows 8 in desktop mode. However, Silverlight is not supported in Windows 8 Metro mode, where apps run on top of the new Windows Runtime (WinRT). Crump offers a useful technical comparison of Silverlight and Metro development, and explains in specific terms how developers can use their XAML skills and familiarity with Silverlight to build Metro-style applications.
Most developers are aware of the high level differences between the technologies, but they may not have a handle on the intricacies when it comes to developing real world applications. The basics in a nutshell: Silverlight developers can use multiple versions of Visual Studio/.NET Framework (.NET 2.0 to .NET 4.5) and program in C#, Visual Basic and XAML. Metro development requires Visual Studio 2012/.NET 4.5 and Windows 8, and supports a wider range of languages, including C#, VB, C++, XAML, HTML and JavaScript. Metro development also requires Silverlight 5 developers to move beyond XNA, which is not supported, but they can use DirectX, notes Crump.
One key difference that Crump points out in his talk is that Silverlight was built for a mouse and keyboard (Chrome). Metro apps are primarily based on touch input (no Chrome), and according to Crump, that's why Microsoft is telling Metro developers to focus on "content over Chrome." That's just the surface of what he delves into, which is useful information that may help clear up questions that some developers have about the differences between Silverlight and Metro development. The 10 areas he covers in the Webinar include: fundamentals, application lifecycle, XML/code namespaces, WebRequest (async, await and Tasks <T>), isolated storage and file I/O, navigation ("rethink Uri"), controls (some are missing in Metro), animations, freebies and monetizing. Crump's March VSM article, "Porting a Silverlight App to a Metro-style App," addresses similar concerns about the compatibility of Silverlight code with Metro-style applications.
Many developers have been frustrated by Microsoft's communication about the future of Silverlight. In late June, IT writer Tim Anderson spoke with Microsoft Corporate Vice President Scott Guthrie (the former head of the Silverlight development team, who is now in charge of the Windows Azure dev platform and ASP.NET) and wrote up highlights of the conversation in his blog, "Microsoft's Scott Guthrie on what has happened to Silverlight." Among the points of interest is Guthrie's explanation for why Microsoft decided to use HTML in place of Silverlight for the UI of the latest Windows Azure admin portal. Anderson also notes the recent support of HTML applications in Visual Studio 2012 LightSwitch, a template-based dev environment, which initially only generated Silverlight apps.
About the Author
Kathleen Richards is the editor of RedDevNews.com and executive editor of Visual Studio Magazine.