Chapter 8. Porting from Microsoft Windows

Success is a lousy teacher. It seduces smart people into thinking they can't lose.

Bill Gates

Microsoft Windows is one of the world's most widely used operating systems and is available in desktop, server and embedded variants. Due to its ease of development and widespread adoption there are a large number of developers, development tools, applications and resources worldwide.

Developers porting code from Windows to Symbian often find difficulties when attempting to map the ideas and concepts in Windows onto Symbian. To assist you in doing this, there are four major ways that porting code can be accomplished:

  • create a library of base components in both platforms

  • refactor the code bases to bring the high-level designs closer together

  • use the Open C/C++ libraries

  • do a total rewrite of the code base.

Ideally the application would have been written using a modular design and developed using ANSI standard C or C++, so the actual porting is largely down to reworking the user interface rather than any significant rewrite. Unfortunately, in the real world, this is seldom practical or even possible, especially if the program has been through a number of revisions. Most projects use one or some of the options above to move their product set onto Symbian devices.

Since Open C/C++ has already been discussed in depth in this book, this chapter's focus is on migrating the code and the design decisions that need to be made when porting from Windows to Symbian. ...

Get Porting to the Symbian Platform: Open Mobile Development in C/C++ now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.