The Landscape of Pervasive & Mobile Computing Standards Sumi Helal Synthesis Lectures on Mobile and Pervasive Computing Preface


The building blocks: The .NET compact framework libraries



Download 0.57 Mb.
Page10/45
Date25.06.2017
Size0.57 Mb.
#21767
1   ...   6   7   8   9   10   11   12   13   ...   45

2.6.2 The building blocks: The .NET compact framework libraries


The base class libraries are the fundamental building blocks of every application. These are the libraries that provide such things as file I/O, collections, primitive drawing types, localization and globalization, and XML handling. These libraries provide a great deal of functionality without requiring developers to reimplement commonly used functionality every time they undertake a new project.

2.6.3 Making connections: Networking and XML Web services


The most interesting device applications are connected, which is why Microsoft made it easy to connect the devices and share data between them. At the network stack’s lowest level, the .NET Compact Framework exposes both synchronous and asynchronous socket operations to developers. Built on top of this model is a richer HTTP layer, which lets developers build applications that leverage the biggest data network in the world—the Internet.

At the most functionally rich end of the spectrum, the .NET Compact Framework implements the SOAP 1.1 protocol specification, which lets developers call remote methods over HTTP and programmatically deal with the information returned at the application level. This functionality puts devices on par with other machines in distributed network architectures. Finally, many small devices are enabled with infrared functionality, and the .NET Compact Framework has built-in support to let people establish connections and move data to other devices over this simple peer-to-peer transport.


2.6.4 Data is power: Data access


On top of the base classes sits the ADO.NET components that allow data access and handling. In the first version of the .NET Compact Framework, there are two data providers that let developers interact with specific data stores. One data provider lets developers access Microsoft SQL Server 2000 on remote servers, and another lets them access SQL Server CE, a local database that runs on the device. SQL Server CE lets developers cache large volumes of data on the device such that the data can be used while offline; SQL Server CE also provides a synchronization mechanism back to SQL Server.

This proves to be a powerful combination for developers, simplifying mobile data access. In a few simple lines of code, the developer can pull large volumes of data on the order of tens of Mbytes down to the device. The device can then read and update the data while the application works in a disconnected mode. Then, another simple line of code lets the device synchronize changes made to this data with the original server.


2.7 CHALLENGES AHEAD


Many difficult challenges undertaken with the .NET Compact Framework—in particular, the functionalityto-performance ratio and size—have proven to be within the system’s capabilities, as each new preview and beta release move closer to the original goals. Furthermore, Microsoft will continue to add more features and functionality, working around design constraints.

Although the .NET Compact Framework solves many mobile development problems, it does not completely solve some particularly interesting development areas. These are the challenges that application mobility and distributed networks present.

One interesting and compelling problem the .NET Compact Framework will continue to pursue through future releases is increasingly better adoption of mobilephone-specific technology. The types of functionality specific to mobile phones include using text messages as a data transport between devices. Also, network conditions over which devices—especially mobile phones—must communicate typically tend to be more transient and unreliable than traditional, permanently connected PCs. Other interesting areas of development, however, do not completely pertain to the implementation of the .NET Compact Framework but rather to the challenges presented by application mobility and distributed networks in general.

Another important area where the .NET Compact Framework will strive to add value is in implementing and abstracting the ever-emerging relevant standard protocols for sending data, messages, and services to mobile devices over the network. Today, it is difficult to move data to devices regardless of the particular network the device is on, because simply addressing a device that changes an IP address is frequently challenging. Because mobile devices inherently have some of the greatest networking requirements, they will be a strong testing ground for APIs that support programming to these standards.

Finally, .NET Compact Framework development will continue to extend into other form factors of devices. While the majority of development with the .NET Compact Framework is likely to be on PDAs and high-level mobile phones, other types of devices will come into focus as demand grows for a rich

Because mobile devices inherently have some of the greatest networking requirements, they will be a strong testing ground for APIs that support programming to these standards.

development environment that is efficient for programming. This presents perhaps the biggest challenge to the .NET Compact Framework’s future development—to maximize portability of applications and programming skills among different device form factors without compromising the ability of applications to exploit the unique and powerful resources for each of these different platforms and form factors. Developers will want to minimize the differences between similar applications for maintenance reasons. However, applications that run identically on all form factors of devices do not take full advantage of any of those platforms, so they do not give end users the most dynamic application experience. Providing the right level of abstraction of common features has been—and will continue to be—one of the greatest challenges, minimizing development efforts and maximizing end-user experiences.

ith its release in early 2003, the .NET Compact Framework will give devices the functionality that developers have come to expect from modern, safe PC environments. The .NET Compact Framework replicates this functionality so well that at a source-code level, it is often impossible to tell whether the code was written for a PC running the .NET Framework or a mobile phone running the .NET Compact Framework. The .NET Compact Framework lets developers take existing code and investment in an application built for a PC and, with little modification, run it on a variety of smart devices. It also lets devices participate in network architectures on parity with other machines by letting them easily consume XML Web services, display and process data locally, and synchronize data back into the original source. The ultimate goal is to open an entirely new opportunity for software developers worldwide, letting them efficiently create solutions in the new and exciting realm of mobile applications.



WAP: Present and Future

In 1997, several wireless-phone manufacturers organized an industry group called the Wireless Application Protocol forum. This group defined the WAP specification in the form of a long, describes technical document series that defines standards for implementing wireless-network applications. Hundreds of industries strongly supported the WAP forum for standardization to help the technology become widely adopted.

Unfortunately, most of the enthusiasm surrounding WAP has evaporated owing to inherently low channel bandwidth, increased round-trip delays, and a lack of security. WAP technology is primitive and still evolving, and its future depends on how quickly it can improve the transfer rate and effectively enhance its business model.


Download 0.57 Mb.

Share with your friends:
1   ...   6   7   8   9   10   11   12   13   ...   45




The database is protected by copyright ©ininet.org 2024
send message

    Main page