90 likes | 100 Views
Understand the differences between WPF and Silverlight technologies for web development. WPF offers rich functionality, compatibility with Windows OS, and 3D graphics. Silverlight, a subset of WPF, runs on various OS and browsers. Learn when to use each based on the target audience and intended application.
E N D
WPF vs Silverlight Stuart Haas
WPF • Windows Presentation Foundation • Included in Vista, Server 2008 and XP service pack 2 • Deployed in desktop and on the web • 2d, 3d drawings, fixed and adaptive docs, advanced typography, vector and raster graphics, animation, data binding, audio and video • Standard in .NET Visual Studio 2008
Silverlight • Subset of WPF • Compatible among many web browsers and Windows and Mac OS X operating systems (Linux through moonlight) • Integrates graphics, multimedia, animations and interactivity into single run time • Uses XAML but can access XML through a DOM interface and is consistent with AJAX • Logic can be written in any .NET language and even Python and Ruby • No 3d features but vector based drawing included (flash like experience)
Use of WPF • Ships as part of the .NET Framework (version 3.0 and onward) • Runs as Windows application or as web "browser application" (called XBAP, for "XAML Browser Application"). Note that XBAPs run only in Internet Explorer with .NET 3.0 and in both Internet Explorer and Firefox with .NET 3.5. • Runs on Windows machines only (Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008) • Richest functionality, including 3D graphics Courtesy of: http://blogs.msdn.com/jennifer/archive/2008/05/06/when-should-i-use-wpf-vs-silverlight.aspx
Use of Silverlight • Ships independently • Runs in web browsers only (Internet Explorer, Firefox, Safari) • Runs on Windows or Mac operating systems (also on Linux via Moonlight, which is an open source implementation of Silverlight based on Mono) • Functionality is a subset of WPF's feature set Courtesy of: http://blogs.msdn.com/jennifer/archive/2008/05/06/when-should-i-use-wpf-vs-silverlight.aspx
Which to use? • WPF is a more mature technology and was designed with a richer feature set. It also has the advantage of being able to run in a browser or as an installed Windows-Form-type app. • Silverlight has a broader reach. You can access Silverlight from many operating systems and web browsers. • The most important reason to choose one over the other should be based on the intended audience for the application. For example, if a corporation is designing an application for internal use only and every employee has Windows XP as the company standard OS, then go with WPF to leverage the richer feature set. If a corporation is designing an external-facing website, then Silverlight is the better choice because potential customers can access the website from a variety of different operating systems and browsers. Courtesy of: http://blogs.msdn.com/jennifer/archive/2008/05/06/when-should-i-use-wpf-vs-silverlight.aspx
Tools • WPF can be done in Visual Studio 2008 or in Expression Blend 2 • Silverlight requires Visual Studio 2008 sp1, Expression Blend 2, Deep Zoom Composer, and the Silverlight Toolkit • Silverlight can be free if not using the tools but will be cumbersome and need to host Silverlight off of a webserver • WPF can be free if using Visual Studio 2008 only