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

Back to VSLive! San Francisco Show Daily Home

email article
printer friendly
more resources


.NET Compact Framework 2.0 Preview
.NET Compact Framework 2.0 brings many features and managed API enhancements to developers.
by Michael Juntao Yuan

VSLive! San Francisco, March 24, 2004

The .NET Compact Framework is a development and execution environment for managed applications on Windows Mobile devices. It supports both VB.NET and C# programming languages as well as a subset of core APIs in the standard .NET Framework, which runs on desktop and server computers. A key design goal of the .NET Compact Framework is to help desktop and server developers move to the mobile space quickly. The managed APIs have become Microsoft's core platform strategy, so the .NET Compact Framework is phasing out the traditional eMbedded Visual Basic and eMbedded C++ for Windows CE devices.

Since its version 1.0 launch almost a year ago at Microsoft Mobile DevCon (MDC) 2003, the .NET Compact Framework has attracted more than 150,000 developers and has become the fourth most active .NET newsgroup on the Internet. Version 1.0 and two subsequent service packs have been factory burned into all new Pocket PC and Smartphone device ROMs.

ADVERTISEMENT

At MDC 2004, Microsoft is previewing the .NET Compact Framework version 2.0, which will be released with Visual Studio 2005. There are significant improvements over version 1.0. The .NET Compact Framework 2.0 will keep up with the latest .NET programming language innovations. It will support C# 2.0 features, including generics, anonymous methods, and iterators for device development. It will also support the VB.NET My.* namespace to allow fast access to local device information. Managed code performance is another key area of improvement. The .NET Compact Framework 2.0 will have a new just-in-time (JIT) dynamic compiler architecture that generates better quality execution code for all processors.

The .NET Compact Framework 2.0 expands its support for Windows Forms controls significantly (see Figure 1). A particularly interesting new control is "Web browser," which lets you embed an HTML rendering window inside your .NET Compact Framework applications. That helps you combine the rich Web content with the high performance and robustness of smart clients. Much-requested user interface (UI) controls such as calendar, date picker, native-style notification balloon, and numerous other features are also supported.

In addition to new controls, support for existing controls has also improved. Most noticeably, the new generation of Pocket PC and Smartphone devices will support multiple screen sizes, resolutions, and orientations. All UI controls will be able to automatically resize themselves to adjust to the host screen characteristics. The managed API will also directly support Windows docking, auto-scrolling, clipboards, and keyboards. For game developers, the .NET Compact Framework 2.0 will include support for Direct3D and DirectDraw Mobile APIs.

On the network and Web services front, the .NET Compact Framework 2.0 supports IPv6 and SOAP 1.2 specifications. Web service authentication is enhanced through WS-Security and Kerberos. A new programming model simplifies asynchronous Web service invocation. If the developer chooses to work with XML documents directly instead of auto-generated SOAP proxies, the .NET Compact Framework 2.0 supports mapping from XML schema to C# classes and XML processing through XPath.

For applications that work with offline data stored in local SQL Server CE databases, the .NET Compact Framework supports typed direct access to the new version of SQL Server CE (version 3.0, code-named "Laguna") through the SqlCeResultSet API. Microsoft will release SQL Server CE 3.0 simultaneously with the .NET Compact Framework 2.0 and Visual Studio 2005. SQL Server CE 3.0's key features include support for multiple users and multiple connections, transaction support, and enhanced support for back-end database synchronization (such as multiple subscriptions and progress reports).

A key crucial feature for all mobile development platforms is the need for tight device integration. The software platform needs to leverage all functionalities provided by the underlying device and network. In the .NET Compact Framework 1.0, access to telephony and a native Personal Information Management (PIM) database is available only through native method call wrappers using Platform Invoke (P/Invoke). Version 2.0 will support standard managed APIs for all Pocket Outlook clients, including e-mail/SMS, contacts, calendar, and to-do lists. You can also make phone calls and access call logs directly from the managed code. Plus, Microsoft has planned a new location API for both GPS and operator-based location retrieval.

Microsoft has included a preview of the .NET Compact Framework 2.0 in the alpha version of Visual Studio 2005, available to MDC attendees.

About the Author
Michael Yuan is a leading industry expert and academic researcher in end-to-end mobile applications. He is the author of Enterprise J2ME (Prentice Hall, 2003). Michael will give a technical talk, "Windows Mobile for Java and Symbian Developers," at MDC on Friday, March 26.

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