| Project LongJump — an Architecture for Low Cost, Secure Internet and Wireless Services | ||
|---|---|---|
| <<< Previous | Building Blocks | Next >>> |
Several proven, low cost technologies are available for building client software. These are listed below.
Dynamically generated HTML pages for desktop clients (which can be assumed to be equipped with a web browser).
Simple Java applets to supplement the HTML pages.
Java or Python clients when the above two technologies are not sufficient.
J2ME client software for mobile wireless devices.
For desktops, HTML pages are the simplest and best supported technology. Java applets should be used only when absolutely necessary, and they must be carefully written to avoid excessively long load times and browser JVM bugs.
The stateless nature of HTTP — often the major problem in pure HTML interfaces — is mitigated by the LongJump server's security and system state management features (see System State Consistency and Security). These server-side facilities can be extended to cover web-based clients, because such clients are similar in many ways to the dumb terminals of yesteryear.
If HTML pages and Java applets simply cannot be made to work, then Java (J2SE) or Python programs should be used. This would require installation and maintenance of additional software on the clients, which is rarely desirable. The need for installation and maintenance should be thoroughly considered when embarking on a such a custom client solution.
For mobile wireless devices, however, the situation is different. Web-based technologies such as WAP may not deliver the performance required, nor do they allow sufficient tuning of the user interface to make the application usable on highly limited handheld systems.
Custom clients using the Java J2ME technology offer the greatest promise of utility and portability at low cost for mobile wireless devices. J2ME is likely to be widely supported by the manufacturers of such systems. This technology is already available for the popular PalmPilot and BlackBerry, as well as a number of cellular telephones.
The overall approach to choosing client technologies emphasizes cost reduction. There might well be many clients, and large expenditures on each is very likely to make the whole application economically unfeasible. Therefore, freely available components are recommended as part of the LongJump architecture. Of course, Open Source products are the best choice for the reasons listed previously, but this option may not possible due to manufacturer and user preferences for certain proprietary platforms.
| <<< Previous | Home | Next >>> |
| Open Standards | Up | Server Building Blocks |