Browse DevX
Sign up for e-mail newsletters from DevX


From Palm OS to Symbian OS: Making the Switch, Part 2 : Page 3

Thinking about switching from Palm OS to Symbian OS? The proliferation of smartphones has made it necessary to build many wireless applications from the operating system on up and Symbian OS seems to have this market cornered. Part 2 of this series delves deeper into the differences between developing for Palm OS and for Symbian OS. So if you do decide to switch, you'll know what to expect.




Building the Right Environment to Support AI, Machine Learning and Deep Learning

One advantage Palm OS has over Symbian OS is that the Palm Conduit Development Kit (CDK) makes it much easier to write conduits for its HotSync Manager application for PC/PDA data synchronization. With Symbian OS, you write your own data synchronization applications using the Connectivity SDK, 2.5.

Despite this advantage, Symbian OS was designed from the ground up for Smartphones, so it has a much richer set of networking and messaging APIs.

Symbian's extensive set of messaging APIs can be used to connect applications with both external communications services, like SMS or e-mail, and interapplication communications (IAC) calls, such as calling for information from the Contacts database or using the Global Find API to search for text strings in saved files. Instead of writing a routine to perform such functions, you use relatively simple API calls.

While both operating systems have TCP/IP networking and enable the use of sockets, Symbian OS offers easier access to networking protocols via API calls. In particular, Symbian OS enables the use of sockets with a variety of different transport layer protocols. So, besides TCP/IP, where one expects to find sockets, you can also use sockets with IrDA and SMS.

Using sockets is done at a high level during the application's network initialization phase, eliminating the need to write any protocol specific code. Simply use the socket API without regard to the protocol's demands.

The Biggest Difference: Programming Styles
The biggest change you will face in moving to Symbian OS is becoming an object-oriented programmer. In Palm OS, even developers who use C++, can program as if they were in a C environment. That is simply not possible in Symbian OS.

For example, most Palm OS applications use multiple '.h' and '. c' source files, and a resource file that describes user interface resources. Usually the source files are organized by functionality—one file contains application logic, database functionality, and so on. In short, Palm OS uses standard C programming conventions.

Symbian OS applications, on the other hand, use the object-oriented, Model-View-Controller (MVC) model. In MVC, there's a clear division between application logic and the user interface. A typical Symbian OS program is made up of C++ header and source files that define the application's classes. For example, consider a typical Palm OS program on the left compared to a Symbian OS on the right.

Figure 4: Palm OS vs. Symbian OS

As shown in Figure 4, Symbian OS takes a very different approach. In Symbian OS, any application must use three different classes: the application class; the document, which may include a data model, class; and a user interface class. If you're using UIQ, you must include at least one View class, which is the equivalent of onr of Palm OS' Forms.

In Symbian OS, applications are made up of an application class. You use this to create the document/data model and the UI. Interprocess communication is done by event handlers within the User Interface Class, which work with the underlying operating system.

Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date