The Framework Class Library

Visual C# and Visual Basic .NET provide the language syntax for describing the program flow, but to get anything done besides adding numbers, the application needs to use the Framework Class Library (FCL). On the desktop version of .NET, the FCL provides an outstanding amount of functionality, easily seducing the most skeptical of programmers with support for the most complex of tasks. The class library that comes with the Compact Framework is significantly less functional but still quite powerful.

The class library in the Compact Framework supports most of the major functional groups supported by the desktop, albeit with fewer classes and methods. The Compact Framework supports threading, file operations, the 2D drawing functions, socket programming, Web service clients, and many of the other parts of the standard FCL.

What isn't supported is the GDI+ drawing method, remoting, generic serialization, and classes designed for server operation. The criteria for deciding what went into the Compact Framework FCL are based on which classes were needed for basic client Windows Forms applications that access data both on the local device and through the Internet. The size of the resulting runtime was also a chief consideration because the larger the runtime, the greater the need for OEMs to use larger, more expensive Flash chips in their devices.

This topic is from Programming Microsoft Windows CE, Third Edition, by Douglas Boling, published by Microsoft Press. © 2003 by Douglas McConnaughey Boling. Reprinted here by permission of the author.