Python on a Symbian-based Nokia S60 smartphone |
![]() |
![]() |
![]() |
News - Web Development |
Written by Tim Black |
Monday, 31 December 2007 13:07 |
Over Thanksgiving I wrote a little program in JavaScript for my Dad, who is a charter pilot who needs an easy way to record several time values with the press of one button on his smart phone:
It works great, except Opera doesn't allow files opened from the local filesystem to store cookies, and Dad doesn't always have web access when he needs to record a time value. (Maybe I should try an Opera Widget...) So, in the spirit of the Do-It-Yourself books he's got on his bookshelf, over Christmas Dad asked me what language I'd recommend he use to write a program for his phone. If I knew how to use Google Gears on the Nokia S60, maybe I'd recommend it. But I don't and I wonder if Gears is still too new. So after a little research, here's what I came up with: It looks to me like C++ is the default language to use on Symbian, and Java is a close second. However, I wouldn't use either myself, because the syntax of both C++ and Java (see Executive Summary, short code comparison and long code comparison) (and development process--you have to compile for your particular operating system before you run) is more complex than Python's (and I already use Python), and Python works on Symbian. It is my impression that Python programs are also more portable to other operating systems than are C++ programs. For these reasons, it looks like Symbian development is moving toward using Python and Ruby. There are several Python libraries available that you can "import" into your Python code to create the application's GUI features (title, menu, central content including buttons, text boxes, pictures, etc.). They work by providing a Python interface to Symbian's software development kits - SDKs (see S60 SDKs) including Symbian's graphical user interface (GUI) libraries and other available functionality (contacts, calendar, filesystem, phone, etc.). |
Last Updated on Saturday, 07 December 2019 03:01 |