Join Now

This page was last modified 14:08, 13 April 2007.

Category:Porting to Symbian OS

From Forum Nokia Wiki

Symbian OS has some peculiarities that are worth keeping in mind when porting from another programming language to Symbian C++. This category is to hold all those useful information that may ease porting a program to Symbian.

  1. Naming conventions: every programming language and even environment has its own coding conventions that programmers should obey in order to not deviate from the normal style. It applies to Symbian C++ as well.
  2. Descriptors: string handling on Symbian OS is not an easy task. A unique solution has been used from the very early days on that is suitable for both string handling and efficient memory access. The drawback of the idea is that it takes some time for - even experienced - programmers to get used to it, thus has a learning curve longer than this seemingly small issue should require. However, once you're familiar with the basic idea it's fairly easy to make use of this framework.
  3. Multi-threading: since Symbian OS is designed for resource constrained devices, the use of multiple threads in a process is heavily discouraged as it puts extra burden on CPU and other system resources unnecessarily - per Symbian OS designers. For that reason, a new approach has been worked out for doing multiple tasks simultaneously in a process. The framework is called Active Object framework and its two core components are: Active Objects and Active Scheduler. See more here.
  4. Platform Security: due to the growing demand for a secure mobile operating system, the latest versions of Symbian OS contain an enhancement of existing security features. The addition of this feature to Symbian OS greatly affects developers' work in terms of programming, testing, deployment, etc. Extra information can be found here.

This category currently contains no articles or media.

 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX