Java 2 Micro Edition: The Ultimate Guide to Programming Handheld and Embedded Devices (Professional Developer's Guide Series) - Softcover

Giguère, Eric

 
9780471390657: Java 2 Micro Edition: The Ultimate Guide to Programming Handheld and Embedded Devices (Professional Developer's Guide Series)

Inhaltsangabe

A complete guide to Java 2 Micro Edition explains how to use this new programming language, which was developed to run specifically on all handheld devises, discussing its capabilities, including the user interface profile for handheld devises, and providing sample code and programming examples for the Palm and Windows CE platforms on CD-ROM. Original. (Intermediate/Advanced)

Die Inhaltsangabe kann sich auf eine andere Ausgabe dieses Titels beziehen.

Über die Autorin bzw. den Autor

ERIC GIGUÈRE is a software developer for iAnywhere Solutions, a subsidiary of Sybase, where he works on Java technologies for handheld and wireless computing. He has written for Dr. Dobb?s Journal and Software Development magazine and is the author of Palm Database Programming: The Complete Developer?s Guide (Wiley).

Von der hinteren Coverseite

The ultimate guide to programming handheld and embedded devices

Can Java be used effectively on small computing devices? Absolutely, says expert Eric Giguère, as he introduces Java(TM) 2 Micro Edition (J2ME)-the new release from Sun Microsystems designed specifically to run on small computing devices like cellular telephones or personal digital assistants. Giguère goes on to provide an in-depth tutorial on how to program using this new platform, covering all the concepts, configurations, and implementations you'll need to get started. He clearly explains how J2ME is different from standard Java, and he offers an unbiased view of the programming choices available for the rapidly exploding market of handheld and embedded devices.

You'll find authoritative discussions on a host of highly relevant topics, including:
* Coding strategies for small devices and how J2ME lets you write Java programs that don't take too much memory or processor power
* J2ME specifications, including the configurations and profiles that define the capabilities available to various devices
* KVM and the history of its development
* How to use various J2ME implementations

The CD-ROM contains:
* Java(TM) 2 Micro Edition specifications and reference implementations
* Early access versions of the Motorola J2ME SDK and the BlackBerry Java Development Environment
* JBuilder Foundation 3.5 and Handheld Express
* Programming samples and utilities

Professional Developer's Guides

The Professional Developer's Guide series provides the first in-depth look at recent or emerging programming technologies. Experienced programmers and developers will find comprehensive coverage of new programming standards as well as code, sample programs, developer's tools, and applications that will make programming for a new technology much easier.

Auszug. © Genehmigter Nachdruck. Alle Rechte vorbehalten.

Java 2, Micro Edition : The Ultimate Guide to Programming Handheld and Embedded Devices By Giguere, Eric

Chapter 1: It Really is a Small World After All

These days, it seems that smaller is becoming just as important as faster-at least, when it comes to computing. Whether it is something as extreme as nanotechnology or as commonplace as internet appliances, there is an increasing desire to embed computing technology in all facets of the human experience. The popularity of personal digital assistants (PDAs), cellular telephones, and other hand-held devices is just the first wave of this surge.

Today's small computing devices are comparable in power to the computers of five years ago. Most will always lag behind what is considered adequate for a desktop computer, however, due to space and power consumption considerations. The challenge is to adapt programs that work well on the fastest processors and that use memory indiscriminately so that they also work on these smaller devices. In this chapter, we discuss small computing devices to see what makes them different from desktop and server computers. This knowledge prepares us for the next chapter, where we will explore how Java works and why it needs to change in order to work with these devices. We will then conclude this part of the book with a discussion of programming strategies for small devices.

Small Computing Devices

First, we should define a small computing device, which is simply a computing device that has limited processor speed and/or available memory when compared to a desktop or server computer. A typical small computing device is a PDA, such as a Palm V but the category also covers devices that do not have a conventional user interface. Some devices, for example, are meant to be embedded inside other systems-with no explicit human interaction. These devices are also of interest to us, although we will be dealing mostly with interactive devices throughout this book (because they are more general and more readily available).

Admittedly, the line separating a small computing device from the capabilities of a full-fledged desktop or server computer is rather blurry as thinner notebook computers, Web pads, and other devices come onto the market. In general, however, you can use the following rule of thumb to separate the two camps. If you never worry about the speed of your application (if it is acceptable without any extra work on your part) or about the amount of memory that it requires (within normal limits), you are not working with a small computing device.

We can now examine the characteristics that separate small computing devices from their more powerful siblings.

Memory and Storage Capacity

Memory capacity is an important measuring stick, and at first glance, a small computing device might not seem that limited. You will find that it is not unusual, for example, for a modern PDA to have 4MB, 8MB, or more of memory. While this amount is less than the 64MB or 128MB that you will get in a typical desktop system, it is not a debilitating amount. Programs can fit comfortably in the OMB-to-4MB range, regardless of the platform. Focusing on memory capacity is rather deceiving, however, because what we need to focus on is total storage capacity (which is a much more important number).

Total storage capacity is the sum of a device's online and offline storage capacity. Online storage capacity is simply another term for memory capacity-the amount of memory available to store runtime application data (stack, threading information, and heap), system data, built-in applications, and the operating system. Online storage is characterized by instant availability and might or might not be persistent. Offline storage capacity, on the other hand, is the capacity of secondary, persistent storage modules such as hard disks or memory sticks. Offline storage is usually slower to access and is not normally available for storing runtime application data.

Compare the memory capacity of a desktop computer with 64MB of random access memory (RAM) and a Palm Vx with 8MB of RAM, as illustrated in Figure 1.1. The difference is not that pronounced. Now compare the total storage capacity of the two devices. Say that the desktop computer includes a 10GB hard drive for offline storage. Figure 1.2 demonstrates the difference between the two quite dramatically: the desktop computer's capacity is roughly 10GB (we can effectively ignore the 64MB of RAM for this calculation), and the Palm Vx's still stands at 8MB. The desktop computer has almost infinite storage capacity when compared to the basic Palm Vx. Total storage capacity is not always a distinguishing feature, however. Consider the IBM Microdrive, for example-a 340MB storage device that can be plugged into any device that supports the CompactFlash Type II expansion slot...

„Über diesen Titel“ kann sich auf eine andere Ausgabe dieses Titels beziehen.