PalmPilot's popularity is growing and with over a million units sold, the Palm OS dominates the hand-held market. Wired has astutely described Palm's position in a recent article: "On its way to becoming the bestselling hand-held computer of all time, the 3Com PalmPilot has spawned an intense, emotional, and fanatical developer following not seen since the glory days of the Mac." (Wired, 20 Feb. 98).
Palm Programming should be eagerly accepted by programmers because the authors worked closely with Palm to ensure that the book is tailored exactly to the needs of the ever-growing group of Palm developers. As nothing but some piecemeal documentation exists currently, this book provides a much needed solution to the Palm developers. In fact, Palm uses this book as their official developer's guide and will be using it in the future as a key part of their training materials for developers.
There are currently no books on Palm programming (and we know of none that are planned). The only way to learn is by using the reference material published by Palm (available freely on their Web site), the tutorial they provide, or various Palm programming FAQs compiled by third parties.
Palm Programming shows intermediate to experienced C programmers how to build a Palm application from the ground up. Using an easy-to- understand tutorial approach, this book gives readers everything necessary to create a wide range of Palm applications and conduits, from simple scripts through full-blown applications, and in the process provides thorough coverage of Palm programming. It includes a CD-ROM (Macintosh and Windows compatible) with the full source code to the examples in the book, a trial version of Palm's Software Development Kit, and third-party developer tools, including Metrowerks' CodeWarrior Lite programming kit.
Part 1: Overview of Palm OS and devices
Chapter 1: The Palm Solution Chapter 2: Developing for Palm OS Chapter 3: Designing a solution
Part 2: Programming for the handheld
Chapter 4: Structure of an Application Chapter 5: Forms and Form Objects Chapter 6: Databases Chapter 7: Menus Chapter 8: Extras Chapter 9: Communications Chapter 10: Debugging
Part 3: Programming for the desktop: conduits
Chapter 11: Getting started with conduits
Chapter 12: Uploading and Downloading Data Chapter 13: Two-way Syncing Appendix: Where to go from here
The complexity continues to increase as the reader is introduced to forms design and handling and Palm Databases interaction (the equivalent of the Windows registry). Rounding out the applications-development tutorials is an excellent discussion of event-driven user interface (UI) programming and the widgets available in the Palm toolbox.
A number of development options and platforms are covered. If you don't want to shell out hundreds of dollars for commercial software, GNU's Not Unix (GNU) tools from the Free Software Foundation are presented as a viable option. The discussion of conduit development is limited to Visual C++, but only because of the limitations of the official Conduit Developers Kit. --Tim Kohn