Welcome Guest!
Create Account | Login
Locator+ Code:

Search:
FTPOnline Channels Conferences Resources Hot Topics Partner Sites Magazines About FTP RSS 2.0 Feed

Free Trial Issue of Visual Studio Magazine

email article
printer friendly
get the code
more resources

Get a Grip on Longhorn
Take a running start at developing applications for the next Windows OS.
by Roger Jennings

Posted December 16, 2003

Technology Toolbox: VB.NET, XML, Windows "Longhorn" (PDC Preview Edition, build 4051), Microsoft Longhorn SDK (PDC Preview Edition), Microsoft Visual Studio .NET Enterprise Architect "Whidbey" (Technology Preview)

Attendees at the Microsoft Professional Developers Conference 2003 took their first look at Longhorn, the future successor to Windows XP and, ultimately, Windows Server 2003. Even in Longhorn's pre-alpha state, there's a lot to like in this major Windows overhaul, which some analysts compare in importance to the move from Windows 3.1+ to Windows 95 (see the sidebar, "Longhorn Might Face Long Odds"). Major changes are in store for Visual Studio developers in the Longhorn era—the last half of the 21st century's first decade. I'll help you prepare for these changes by taking a close look at Longhorn's innovations and their implications for VS.NET programming.

ADVERTISEMENT

The Win32 API, reigning king of the desktop for a decade, is dead; long live WinFX, Win32's successor. WinFX is a new .NET-based API that provides managed access to the three Longhorn pillars—Avalon, WinFS, and Indigo—and all other new Longhorn functionality. Secure managed code is in; native code and buffer overruns are out. The move from Win32 to WinFX is undoubtedly the largest software refactoring project ever attempted. Win32 will remain, of course, for backward compatibility, but WinFX is where the action will be. If you aren't using managed code for all new Web and Windows apps, it's time to refactor your development strategy. Win32 will go into maintenance mode in the Longhorn timeframe.

The primary benefit you'll gain from the refactoring of the Win32 API to a new set of .NET namespaces is rationalization and dramatic simplification of a code base that grew like Topsy over the last 10 or more years. The 70,000 individual APIs in the Win32 stack will shrink to about 8,000 .NET namespaces and types, according to an article by Paula Rooney about the Windows Hardware Conference (see Additional Resources). The WinFX Developer Preview chart, distributed to PDC attendees, lists 156 high-level System namespaces and types, most of which are available in the Whidbey Technology Preview installed on Longhorn. Providing a pair of APIs leads to a hefty installation footprint: The 32-bit PDC Client Preview weighs in at about 4 GB. Adding the Whidbey Technology Preview and Longhorn SDK brings total development installation disk space to about 7 GB.

WinFX divides Longhorn development projects into four basic application-model categories: Client (Avalon and Windows Forms), Web and Services (ASP.NET and Indigo), Data Systems (WinFS and Yukon), and Mobile PC and Devices (Compact Framework and Mobile PC Optimized). Each application model relies on namespaces and types classified as Presentation, Data, Communication, and Fundamentals groups. Presentation contains System.Windows (Avalon), System.Windows.Forms (Win32-based WinForms), System.Web.UI (ASP.NET WebForms), System.Help, System.Drawing, System.NaturalLanguageServices, and System.Speech namespaces. The Data namespaces include System.Data, which duplicates the .NET 1.2 preview version; System.Search and System.Storage to support WinFS and Windows Logging System (WinLS); System.XML; and System.Web's Personalization, Caching, and Session State namespaces. Communication offers System.MessageBus for Indigo, System.Messaging, System.WebSevices, System.DirectoryServices, System.Remoting, System.Runtime.Remoting, System.Discovery (for Active Directory and Universal Description Discovery and Integration [UDDI]), and System.Net. Fundamentals delivers common Base and Application Services, Security, Configuration, and Deployment/Management functions to all groups.




Back to top














Java Pro | Visual Studio Magazine | Windows Server System Magazine
.NET Magazine | Enterprise Architect | XML & Web Services Magazine
VSLive! | Thunder Lizard Events | Discussions | Newsletters | FTP Home