Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Palm OS network programming : writing connected applications for the Palm OS
Winton G., O’Reilly & Associates, Inc., Sebastopol, CA, 2001. 382 pp. Type: Book (9780596000059)
Date Reviewed: Nov 7 2002

With the evolution of wireless and cellular data networks, handheld computers have become even more connected, providing a convenient way of accessing the Internet and communicating with other people from anywhere, at any time. In this mobile computing environment, network-aware applications are in great demand, and this book covers such software as written for the Palm operating system mobile computing platform.

The author uses two network applications as examples of how to analyze, design, and develop a full-scale network application, and achieves his goal by following a step-by-step development process. The first example is a client-server application called FTPView, which is useful for connecting to an ftp server and viewing its contents; the second example is a peer-to-peer application called DayTimePeer, which serves as a Daytime protocol client and server.

The book is organized in two parts. Chapters 1 to 4 comprise the first part, which introduces the principles of Palm network applications, discusses network architectures, communication and application protocols, programming techniques, and development/debugging tools. In these chapters, the reader will find illustrative diagrams of data flow in a client-server application using the open systems interconnect (OSI) standard model, with an introduction to each of the network applications examples used in the book.

The second part begins with chapter 5, an introduction to the Palm OS Network Library, which covers the architecture and basic processes followed by an application that uses it. These include detection, configuration, initialization of the protocol stack, socket handling, connection handling, data transmission and reception, and finally, graceful disconnection.

In chapter 6 and following chapters, the FTPView and the DayTimePeer applications are developed in a step-by-step approach, demonstrating the different characteristics and functions of the Palm Network Library. Each chapter contains three parts: technical information (such as function calls, processes and data structures), the sample application (user interfaces), and the source code in the C language. Specifically, the content is as follows. Chapter 6 provides the code for the initialization processes. Chapter 7 covers the hostname resolution. Chapter 8 illustrates the concept of Berkeley sockets and how they are opened and closed. Chapter 9 presents how data is exchanged using a socket, and chapter 10 refines the processes presented in chapter 9 to allow for more responsive behaviour of the network application. Chapter 11 explains how an application can serve incoming connections (thus acting as a server). Chapter 12 clarifies the differences between sockets operating in blocking mode, as presented in previous chapters, and in non-blocking mode, along with the advantages and disadvantages of each mode. Finally, chapter 13 discusses the user datagram protocol (UDP) sockets as a lightweight alternative to TCP for applications with small data packets, such as the DayTimePeer application used in the book.

The source code embedded in the book is very well written, with plenty of comments, making it a valuable inclusion that is worth studying line by line. The mixture of text and code is nicely balanced, with concise descriptions of the code wherever needed, and more lengthy explanations in the introductory and theoretical parts of the book.

The target audience of this book includes existing Palm OS programmers who wish to expand their existing applications with network capabilities or write new network-enabled applications that integrate mobile handheld computing applications with corporate, industrial, or legacy information systems. The book is also targeted at students of computer science and communications courses who wish to exploit the mobile capabilities of Palm-connected devices within their projects and be well prepared for the network-enabled software market.

The learning curve for the reader is rather smooth, which makes the book a pleasure to read. I highly recommend it to those who need to work with Palm OS and the C programming language for the purpose of writing network applications.

Reviewer:  Nikolaos Tsarmpopoulos Review #: CR126614 (0301-0013)
Bookmark and Share
 
Portable Devices (C.5.3 ... )
 
 
Network Operating Systems (C.2.4 ... )
 
 
Wireless Communication (C.2.1 ... )
 
 
Network Protocols (C.2.2 )
 
Would you recommend this review?
yes
no
Other reviews under "Portable Devices": Date
Mobile-awareness: designing for mobile interactive systems
Cheverst K., Davies N., Mitchell K., Friday A. ACM SIGOIS Bulletin 22(1): 8-11, 2001. Type: Article
May 14 2002
Quiet calls: talking silently on mobile phones
Nelson L., Bly S., Sokoler T.  Human factors in computing systems (Proceedings of the SIGCHI conference, Seattle, Washington, United States,174-181, 2001. Type: Proceedings
Feb 1 2002
Palm OS network programming: writing connected applications for the Palm OS
Winton G., O’Reilly & Associates, Inc., Sebastopol, CA, 2001.  382, Type: Book (9780596000059), Reviews: (2 of 2)
Aug 25 2003
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy