why programmers are jumping to Nokia Qt rather than symbian C++? Is there any t开发者_开发问答echinical difficulities in symbian c++? mostly nokia mobiles run in symbian os?
Not really a question, but Symbian sucks. Try to do some geoloc in Symbian and in Qt, you'll see the difference. It's far easier to do it in Qt and to test it in the simulator.
That is since Symbian APIs are going to be replaced, if not superseded or deprecated by the Qt framework with Symbian^4. Even at the moment, you are better off writing Qt applications for Symbian rather then using the horrible(subjective view) Symbian APIs. In fact there isn't going to be a Symbian^4 release anymore. Quote from Nokia:
In fact, we will no longer be talking about Symbian^3 or Symbian^4 at all – it will be one constantly evolving and constantly improving platform.
Bottom line, Qt has already become the standard application development framework for all Nokia platforms(Symbian/Maemo/Meego) and the Symbian OS will follow a more streamlined continuous operating system model like iOS or Android.
References:
http://conversations.nokia.com/2010/10/21/nokia-focuses-on-qt-to-extend-reach-for-developers-make-mobile-experience-richer-for-users/
http://blog.symbian.org/2009/04/30/reviewing-the-release-plan/
Symbian has a very archaic SDK. Some concepts are from the times when booleans and exceptions were not supported by an average C++ compiler. Therefore it is very cumbersome to work with, especially if you are used to more modern SDKs.
Maybe you noticed the TBool typedef, which is used instead of boolean, Descriptors were introduced because there was no standard string in C++ at the time, and as soon as you are doing something non-trivial, you will have to commit to the wonders of symbian garbage collector which is, to put it mildly, archaic and does not mix well with Qt's standard C++ exception handling.
The reason why people still code in native Symbian is either 1. they've been doing this for years 2. they're nuts/masochistic/adventurous 3. they need to use some specific functionality, that is not yet implemented/properly released in Qt APIs (e.g. if you need advanced camera functionality).
精彩评论