Real World Computing
Exit WinFX, enter .NET 3
Each WCF service contains a ServiceDescription object that describes the collection of ServiceEndpoints supported by that service, and each ServiceEndpoint points to an endpoint provided by the WCF Service. At runtime, the WCF ServiceHost creates an EndpointListener for each ServiceEndpoint in the ServiceDescription: the endpoint's Address, Binding and Contract (the where, what and how) correspond to the EndpointListener's listening address and so on. WCF clients contain one or more ChannelDescriptions, each of which contains the ServiceEndpoint with which that client can communicate. At runtime, WCF's ChannelFactory uses the ChannelDescription to create a channel stack to communicate with the service's endpoint.
While most of these features aren't new, in the past they were scattered across a number of other technologies such as .NET Remoting and Enterprise Services. WCF provides a consolidated set of tools that developers need to create secure, reliable and scalable distributed applications, and enables greater interoperability via WS-*.
Presentation matters
Over the years, the drawing functionality in Windows has improved steadily if incrementally, GDI+ being the 2D graphics engine behind current Windows. It provides fully scalable drawing primitives such as Bézier curves, cardinal splines, text and various shapes, and supports a range of advanced gradient and texture fills. It also offers full support for partial transparency and anti-aliasing.
Windows Presentation Foundation represents a major step forward, as it makes far better use of the capabilities of modern graphics processors to perform much faster than GDI+, while also offering a richer set of drawing features. In effect, WPF enables the whole window to become a single drawing surface that each of part of the GUI can contribute to, which helps to create resolution-independent features. The resolution of flat-panel displays has been gradually increasing, so that 150dpi displays are commonplace, 200dpi is available at a price and higher resolutions are on the way. Full GUI scalability is crucial to enable the use of these higher-dpi displays, because without such ability the Desktop objects simply appear smaller as the resolution increases, typically becoming unusable at anything much above 150dpi. GDI+ (and GDI) did support resolution-independent drawing, but developers found it hard to write visually scalable GDI+ applications. Besides, applying a scaling or rotation transform under these APIs affects only the drawing itself and not the overall window layout. Technically speaking, the problem isn't that GDI and GDI+ aren't scalable - with some effort they are - but that USER32 isn't scaleable.
Since WPF composes all the controls in a window into a single drawing rather than segregating each control into its own region, you can apply scalings or rotations to the UI as a whole. And since the WPF UI can scale up or down, applications remain sharp and clear at all resolutions, as opposed to the jaggy mess you get via crude bitmap scaling. In short, WPF provides the ability to build more visually appealing applications.
Windows Workflow Foundation (WWF) consists of a programming model, a workflow engine and a set of tools that enable you to build and deploy workflow-enabled applications. WWF can be used for both automated and human workflows, across a range of scenarios including workflow within a line-of-business application, UI page flow and workflow for systems management. Just as Windows SharePoint Services is the base for and is employed by SharePoint Portal Server, Microsoft intends that WWF should serve as the common workflow engine that can be employed by future versions of BizTalk Server - WWF isn't simply the next version of BizTalk.
