WPF
Some time ago, the folks at Microsoft sat down and designed the
next generation of UI technology for the Vista operating system. The system would be vector-based and
use XML. The final system is called Windows Presentation Foundation
(WPF).
WPF is an integral part of all .NET Framework versions beginning
with version 3.0, which is installed by default on Windows Vista and is an
additional download for Windows XP and Windows 2003. Other parts of .NET
3.0 include:
WCF (Windows Communication Foundation)
-
Communication subsystem
WCS (Windows CardSpace)
-
Digital identity subsystem
WF (Windows Workflow Foundation)
-
Workflow subsystem
WPF applications either run in the browser or as standalone desktop
applications. Both scenarios require that .NET Framework 3.0 or higher is
available. Currently, most WPF applications are standalone because Vista
does not have a high market penetration, limiting the number of PCs on
which WPF can run, and because .NET 3.0 is a sizeable download. This is a
key reason for why Microsoft created Silverlight, a similar technology
targeted at the browser world. Let's take a closer look at WP more
background information.
The main focus of WPF is in vector graphics, but pixelated graphics
are supported as well. WPF also supports multimedia content in forms of
audio and video data. One of the highlight features is the support for
text, which includes some typographical specialties such as justified text, kerning,
and ligatures.
It is certainly no surprise that most WPF coding is done using .NET
languages such as C# and Visual Basic. The .NET Framework—or to be
exact, the CLR (Common Language Runtime)—defines every possible type of
element in a WPF application and enables a good development experience in
Visual Studio (think IntelliSense) and rapid prototyping.
Already, several WPF prototype applications, including several
"virtual newspapers," are available that showcase text flow, such as the
Forbes.com reader (see Figure 1;
download it at http://www.forbes.com/partners/microsoft/newsreader/). The
next version of Yahoo! Messenger will also feature a slick WPF interface.
There were (and still are) several other projects trying to create
vector graphics (and maybe some animation or business logic support)
using XML. One of the oldest is the World Wide Web Consortium's (W3C)
Scalable Vector Graphics (SVG). SVG graphics are created using XML,
support scripting, and are supported by most modern browsers except
Internet Explorer. However, SVG has not reached mainstream market
penetration yet, so it is successful only in some niche markets,
including mobile phones and cartography.
Another related approach comes from Adobe. Flex uses yet another
XML dialect (called MXML) to dynamically create Flash content.
|