Real World Software Architecture

Real World Software Architecture is dedicated to providing information and experiences from the field of Software Architecture.



Subscribe with RSS or ATOM Add to Google

Links

  • Home Page
  • Real World Software Process Engineering
  • Suggested Reading
  • .NET Dev and Arch Collection
  • SEI Essays on SA
  • Software Architecture
  • Bredemeyer
  • wwisa
  • Product Line Engineering
  • PLEES
  • Software Product Lines
  • MSDN Architecture Center
  • patterns & practices






Thursday, June 11, 2009

Programmatic Differences Between Silverlight and WPF – A Whitepaper

Wintellect has released a very cool white paper on the programmatic differences between Silverlight and WPF. The paper includes notes on the changes coming in Silverlight 3.0.

Introduction (from white paper)

The Windows Presentation Foundation (WPF) is Microsoft’s latest development platform for building next-generation Windows client applications. Silverlight, a subset of WPF, extends the platform to the web via the add-on mechanism available in most current browsers. As a subset of WPF, the ability to create rich Internet applications is unprecedented; however, there are some significant differences between the capabilities of Silverlight and WPF, as well as important differences in the programming features of the two technologies.

There are several architectural reasons for the discrepancies between WPF and Silverlight. First and foremost is that Silverlight 2 is a downloadable plug-in running within a browser. In order to insure that the plug-in is a small as possible, Microsoft built a smaller version of the .Net Framework, one that is highly optimized for size and is a small subset of the full .NET Framework, to embed within it. WPF, on the other hand, has full access to the main .Net Framework and all its associated assemblies. The difference between the smaller, downloadable .Net Framework and the full desktop version is one of the major disparities between the two platforms. In addition, the fact that Silverlight is rooted within the browser, and inherits the limitations of that environment, further differentiates the two platforms.

This whitepaper documents both the identical (or nearly so) functionality as well as the differences. WPF and Silverlight have many technological concepts in common: Dependency Properties, Data Binding, Custom Controls and Animation to name a few. In addition, this paper documents functionality implementations that may be available in only one technology or the other. For example, WPF implements a large library of controls for document handling, including printing and formatting large documents.

Finally, this whitepaper outlines some strategies in obtaining code reuse across both technologies. Due to minor differences in implementations of common elements, developers need to carefully plan their development in order to reuse code in both platforms. Of course, since certain functionality may not exist in one platform, developers may need to reduce the scope of the application in those cases.

One last note about this whitepaper: for brevity and consistency issues, all code samples are written in C#. The code samples are small in scope and should not be difficult to translate to Visual Basic.Net or any other .Net programming language.

Get it here.

posted by tadanderson at 7:11 PM

0 Comments:

Post a Comment

<< Home

Previous Posts

  • Pro ASP.NET MVC Framework Book Review
  • Prism (Composite WPF and Silverlight) Quick Start Kit
  • Requirements Engineering: From System Goals to UML...
  • Microsoft .NET RIA Services May 2009 Preview Avail...
  • C# VB.NET and ASP.NET Refactoring Book Reviews
  • Thinking in Systems Book Review
  • Top 10 Architecture Mistakes Podcast and Presentation
  • Software Architecture: Foundations, Theory, and Pr...
  • ASP.NET MVC Training Kit Available
  • Visual Studio Tools for Office 2007 Book Review



Powered by Blogger