WPF (part of WinFX/.NET Framework 3.0) is a brand-new presentation framework, built on top of the
.NET Framework 2.0, that was originally designed to be used on Windows Vista, but it was also adopted for
Windows XP as well. It allows developers and designers to create applications with much higher level of usability
and incredible visual appearance, spending less time to the development and allowing designers to show full
power of their imagination.
These are the most amazing features of WPF:
First of all I need to say that most of the cool features can be done on the most of the modern frameworks and
languages. So, why should you use some unknown framework if everything can be done without it? The answer is time.
Using WPF as a platform for development new applications allows adding different special effects and cool animations
in no time. And if I say time, I also mean the resulting cost of the project - in most cases you get much
more attractive solution while you pay the same money.
One can say that good-looking application can be done in web with Macromedia Flash or something like that, but
in this case the application will have only the presentation level and not business logic - separate application
will be implementing business logic (and it will engage more developers into the development process). So WPF
will be the best choice when developing good-looking business application with high level of usability.
All graphics in WPF is rendered through the DirectX pipeline, so it takes all advantages of the modern
PCs while rendering complex data in real time. But it does not mean that it will look worse on a low-end PC -
WPF rendering engine will be switched to software mode to ensure that user sees exactly the same data, that he
was intended to see.
At the same time WPF allows to extend battery life in notebooks by reacting to the changes of the power
source - some extensive graphics can be temporary disabled.
WPF is implemented atop .NET Framework 2.0, so business logic of the application can be implemented by
using of any of .NET compliant languages (C#, VB.NET, C++.NET, J#, Delphi.NET and other) which are treated
as the most secure languages today. Visual appearance of any existing .NET solution can be enriched
with WPF. Even existing Win32 solutions can be used through the interoperability services.
All design in WPF has been moved out of the code to make the designer and developer more independent, so their
work can be paralleled better, and designer is not required to have any skills in programming.
WPF application can be run at any OS that supports Framework 3.0. Currently those operation systems are Windows
XP with Service Pack 2, Windows 2003 Server with Service Pack 1 and Windows Vista (Framework
3.0 is already preinstalled on Windows Vista). Later Framework 3.0 will be possibly ported on Linux as
it was partially done with Framework 2.0. Also WPF has minimum requirements for PC itself if user wants it to
fully hardware accelerated - video card should support DirectX 9.0c and Pixel Shaders v1.1. Currently that
requirement is met even by almost every integrated video card on desktop PC's and laptops.