With more than 16 million PDAs shipped to date, Palm has defined the market for handhelds, having dominated this class of computing devices ever since it began to outpace competitors six years ago. The company's strength is the Palm OS, and developers loyal to this powerful and versatile operating system have created more than 10,000 applications for it. Devices from Handspring, Sony, Symbol, HandEra, Kyocera, and Samsung now use Palm OS, and the number of registered Palm Developers has jumped to 130,000.If you know C or C++, and want to join those who are satisfying the demand for wireless applications, then Palm OS Programming: The Developer's Guide, Second Edition is the book for you. With expanded coverage of the Palm OS--up to and including the latest version, 4.0--this new edition shows intermediate to experienced C programmers how to build a Palm application from the ground up. There is even useful information for beginners.Everything you need to write a Palm OS application is here, from user interface design, to coding a handheld application, to writing an associated desktop conduit. All the major development environments are discussed, including commercial products such as Metroworks CodeWarrior, Java-based environments such as Sun KVM and IBM VisualAge Micro Edition, and the Free Software Foundation's PRC-Tools or GCC. The focus, however, is C programming with CodeWarrior and PRC-Tools. New additions to the second edition include:
- A tutorial that takes a C programmer through the installation of necessary tools and the creation of a small handheld application.
- A new chapter on memory, with a comprehensive discussion of the Memory Manager APIs.
- Greatly expanded discussions of forms, forms objects, and new APIs for the Palm OS.
- Updated chapters on conduits that reflect the newer Conduit Development Kit.
The best-selling first edition of this book is still considered the definitive guide for serious Palm programmers; it's used as the basis of Palm's own developer training materials. Our expanded second edition promises to set the standard for the next generation of Palm developers.
Written for the more experienced C/C++ developer moving to Palm development,
Palm OS Programming, Second Edition sets an admirable standard as a programming tutorial that will let anyone get onboard with the best techniques and APIs used to build state-of-the-art Palm applications.
Few programming titles are as well written as this one. The authors consistently engage the reader with a tone that's smart and surprisingly personable given that this is a technical book. They first examine what is special about the Palm platform, including the best way to build user interfaces, plus dos and don'ts for new software. Early sections dissect real software (DateBk4 from Pimlico Software) with commentary from one of its inventors. After surveying the wide array of Palm development options (including CodeWarrior and the Palm OS Emulator, POSE), it's on to a simple Palm program.
While many programming texts use samples that grow in complexity, this title is anchored by a single case study--a sales application. As the authors cover the basics of Palm development, from event handling basics, APIs for memory management, and form control programming, they provide the APIs you'll need to know. Then they show how their case study makes use of these features. (This approach is effective, though it assumes a bit of programming knowledge on the part of the reader.)
Standout sections here inspect what makes Palm development special, including memory management techniques, plus there's a fascinating look at automated testing tools (called Gremlins), which can find bugs by executing thousands of simulated user actions. Later sections delve into what it takes to create HotSync capabilities for your Palm applications. These modules, called Conduits, clearly present a programming challenge, and the coverage here will benefit developers of all levels of experience on the Palm platform.
The Palm platform has been a real success story, and Palm OS Programming: The Developer's Guide reveals why. It shows you how to think like a real Palm developer and gives you the specific APIs and programming techniques you need to know in order to write professional-quality Palm applications in C/C++. --Richard Dragan