Three Key Pillars of Longhorn: Presentation, Data, and Communication
Longhorn is based on three key pillars -- Presentation, Data, and Communication. The following describes the responsibility of each pillar.
The Presentation pillar represents the way your application interacts with the user (see Figure 9). As mentioned, for Longhorn Avalon applications you should use the
If you are developing applications for the various Windows versions, the Windows Form
System.Windows.Forms is still available in WinFX.
For web applications, use the
Figure 9. Namespaces for the Presentation pillar.
The Data pillar represents the different ways in which you can access data programmatically (see Figure 10). The familiar ADO.NET stack is still preserved in WinFX and is exposed via the
System.Data namespace. A new namespace is added in ADO.NET in WinFX,
ObjectSpaces gives an objective view of data in your database server, allowing you to access data through objects.
For WinFS (a modernized version of the current Windows File System) access, use the
System.Storage namespace. Notice that there is the
System.Web namespace in this pillar, which is used for such features as ASP.NET personalization, caching, and session-state management.
For manipulation of XML documents and data, use the
Figure 10. Namespaces for the Data pillar.
The Communication pillar handles the details of communicating with the outside world (see Figure 11). For example, you use the
System.Web.Services namespace for consuming and publishing web services. And you use the
System.Net namespace for such tasks as network communications and sockets programming.
System.Collaboration namespace is used for building collaborative applications in Longhorn.
System.MessageBus provides functionality for Indigo. Indigo is the technology for building Service Oriented Applications (SOA).
Figure 11. Namespaces for the Communication pillar.
Beneath all applications are the fundamental namespaces that support basic functionalities such as string manipulation, security, globalization, etc. The Fundamentals layer is divided into four different groups: Base and Application Services (See Figure 12), Security (see Figure 13), Configuration (See Figure 14), and Deployment/Management (see Figure 15).
Figure 12. Namespaces for Base and Application Services group.
Figure 13. Namespaces for Security group.
Figure 14. Namespaces for Configuration group.
Figure 15. Namespaces for Deployment/Management group.
I hope this article has given you a better idea of what WinFX involves. In a nutshell, it is important to realize that the way to move forward is to get yourself acquainted with the .NET Framework. If you have not started on .NET development, now is the time to do so.
Wei-Meng Lee (Microsoft MVP) http://weimenglee.blogspot.com is a technologist and founder of Developer Learning Solutions http://www.developerlearningsolutions.com, a technology company specializing in hands-on training on the latest Microsoft technologies.
Return to WindowsDevCenter.com.