Rapid Application Development Is Now Becoming A Reality

June 1, 2003
This Visual-Basic-Based Development Platform Works To Simplify The Creation Of Software Applications For Handhelds.

As wireless handsets continue to grow in popularity, so does the need for related software applications. To meet this demand, the industry must entice independent software developers to write applications for wireless platforms—especially those pertaining to business applications. AppForge is helping this cause by making it easier for Microsoft Visual Basic desktop programmers to create mobile PDA and cellular-handset applications.

To make this possible, AppForge relies on its MobileVB Mobile Applications Development Software. This software supports over 90% of today's handheld, mobile, and wireless devices. Using MobileVB, programmers can create applications to run on a variety of operating systems, including Palm OS (Palm, Handspring, Sony, IBM, Kyocera, HandEra, Samsung, and Symbol); Pocket PC (iPaq, Jornada, Casio, NEC, Symbol, and Toshiba); and Symbian OS (Sony Ericsson and Nokia). The company also has a Microsoft .NET version of MobileVB in alpha development. It should be available later this year.

The company basically leverages the ease-of-use of the popular Microsoft Visual Basic programming language. At the same time, AppForge has developed add-ons to the standard Microsoft Windows version of the VB 6 Integrated Development Environment (IDE). These add-ons incorporate cross-platform custom controls, a handset run-time engine, and a custom compiler.

Mobile VB supports most common Visual Basic functions and subroutines. Yet it also boasts custom controls, which are needed to replace the standard VB controls when developing mobile applications (see figure). These special ActiveX controls, called "Ingots," contain many familiar programming functions, such as Textbox, Listbox, Combobox, Checkbox, Button, Timer, and more.

To send and receive data wirelessly over the Internet, AppForge specifically created the AFINetHTTP Ingot. This non-visual control provides several user-selectable functions for connecting to the Web using a wireless handheld device.

The technology also caters to game developers. They can use the Sprite Control and Sprite Template to create complex animations. SpriteField is the primary game control. It represents a "playing field" that automatically keeps track of a set of sprites and a tile map. In contrast, the Sprite Template is a non-visual "helper" control. It allows the developer to build animations directly within the Visual Basic IDE.

In addition to this list of capabilities, MobileVB supports the iAnywhere Ultralite database technology. With this support, developers can utilize traditional client-server relational-database capabilities on the handheld device. Synchronization back to the server-side database is accomplished through a separate product called MobiLink. It is now available from Sybase.

MobileVB's basic functionality also supports Palm, Symbian, and Nokia mobile platforms through the use of function library classes. In addition to the controls (Ingots) and libraries that have already been mentioned, the tool provides a way to access non-standard resources through the use of the Fuse software development kit (SDK). This SDK provides easy access to system-level APIs and other external libraries that are not usually available to Visual Basic. With Fuse, users can actually pass information in and out of a MobileVB program to an external software module. In other words, Fuse could be implemented as a standard .dll file that would typically be written in C/C++.

Perhaps one of the most critical features of the MobileVB software is its ability to test the developed application from within the Visual Basic IDE. No emulator or handheld test device is needed. To test the graphical user interface (GUI) and other client functions, the VB application can be run just like any other program.

For more rigorous testing of the wireless features, the compiled program can be downloaded to the target devices or emulator. Developers also will need to download AppForge's Booster application onto the target mobile device. This supporting program provides a required library for running compiled applications. Though it uses only 334 kB of memory, the Booster contains everything for program execution including common functionality. Booster files, which are similar to Window's use of dynamic link libraries (DLLs), are utilized to modularize commonly used code.

AppForge's MobileVB is available now in both a professional and a standard edition. A 30-day evaluation can be easily downloaded from the company's Web site. MobileVB version 3.5 for the Palm OS, Pocket PC, and Symbian OS retails for $899.

AppForge, Inc. 3040 Peachtree Rd. NW, Atlanta, GA 30305; (678) 686-9000, FAX: (678) 686-9099, www.appforge.com.
About the Author

John Blyler

John Blyler has more than 18 years of technical experience in systems engineering and program management. His systems engineering (hardware and software) background encompasses industrial (GenRad Corp, Wacker Siltronics, Westinghouse, Grumman and Rockwell Intern.), government R&D (DoD-China Lake) and university (Idaho State Univ, Portland State Univ, and Oregon State Univ) environments. John is currently the senior technology editor for Penton Media’s Wireless Systems Design (WSD) magazine. He is also the executive editor for the WSD Update e-Newsletter.

Mr. Blyler has co-authored an IEEE Press (1998) book on computer systems engineering entitled: ""What's Size Got To Do With It: Understanding Computer Systems."" Until just recently, he wrote a regular column for the IEEE I&M magazine. John continues to develop and teach web-based, graduate-level systems engineering courses on a part-time basis for Portland State University.

John holds a BS in Engineering Physics from Oregon State University (1982) and an MS in Electronic Engineering from California State University, Northridge (1991).

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!