NS Basic for Symbian OS
With the demise of OPL, developers, especially hobbyists will be pleased to know that NS Basic Corporation have announced the availability of NS Basic for Symbian OS.
NS Basic can now be used to develop both UIQ and S60 applications. It’s easy to use. There’s no need for C++, Carbide.c++ or even Nokia/UIQ SDKs. It creates standard installable files just like the official SDKs. It’s also affordable - only $199.95 for the standard version (for unprotected capability - self signed apps) or $499.95 for the Pro version that allows full application signing. I particularly like the fact that there are no runtime (per device) licenses - something that previously prevented me from using Appforge for many client projects.
It has been possible to use NS Basic on Palm OS and Windows CE for many years. Unfortunately, Symbian NS Basic applications end up with a Palm OS look and feel. From the FAQ…
"Our goal in release 1.0 is near perfect running of Palm apps on Symbian OS devices. If we changed the interface, a lot of apps would break or look ugly, as the spacing would be off. We will be adding enhancements to the UI so Palm apps can be updated to a more modern look and feel."
Applications also don’t fill the whole screen and you have to program to the lowest common screen resolution.
Also from the FAQ…
"Symbian OS devices come in a large variety of screen sizes. Here’s a partial list: 128 x 128, 208 x 176, 240 x 256 240 x 320, 320 x 240, 340 x 220, 352 x 416, 416 x 352. How can you design an app that will run the same way on all of them? Some are landscape, some are portrait, some rotate either way. The best answer is to make your app square, to fit in the intersection of the screen sizes. NS Basic/Symbian OS uses a basic 160 x 160 grid to lay out your app. If the screen is big enough, pixels are multiplied by 1.5 to give 240×240, or by 2 to give 320 x 320. (Magnifications in between look terrible, so we don’t do them.) The result is that apps you create using NS Basic/Symbian OS will run on all current Symbian OS devices without change, and will resize to take advantage of the largest square area that is available. We are planning to add the ability to resize your app to the actual screen size. To take advantage of this, your app will have to query the screen size on startup, then resize all the objects on the form to best take advantage of it. This can rarely be done automatically: laying out objects on a form almost always takes careful planning and design."
These current limitations make NS Basic less suitable for commercial applications and more suitable for hobby programming and freeware. None of the clients I have worked for would accept a Palm OS-looking application on S60 or UIQ. More positively, the limitations actually provide for compatibility with existing Palm OS/Windows Mobile versions of NS Basic. Hence it’s possible to re-use existing examples/code and even do easy cross-platform development.
Related Articles: