Question

Je suis de rabotage pour développer des systèmes Symbian, mais je ne suis pas familier avec elle. Je sais que (peut-être) la façon la plus populaire de se développer sur Symbian est Symbian C ++, et j'ai aussi entendu parler de Qt. Quelle est la différence entre eux? Si je veux courir mon application sur la plupart des systèmes Symbian, qui dois-je choisir? Quelqu'un peut-il me donner quelques conseils généraux?

Merci ~

Était-ce utile?

La solution

Symbian C ++ est le dialecte de C ++ dans lequel est écrit le système d'exploitation, tout le chemin du noyau jusqu'à le cadre de l'application. Elle diffère de ++ standard C dans un certain nombre de façons dont la liste figure ici quelques-unes:

  • Les exceptions ne sont pas utilisés; Symbian utilise sa propre méthode de déroulement de la pile appelée « feuilles ». La raison principale est que la norme C était de toujours en développement lorsque Symbian a été créé, et les exceptions étaient à cette époque pas largement pris en charge par les compilateurs.
  • En raison du manque de soutien des exceptions, la gestion de la mémoire allouée dynamiquement utilise un mécanisme breveté appelé la pile de nettoyage.
  • Bien qu'un port de la STL est maintenant disponible pour Symbian, c'est un développement récent, de sorte que le système d'exploitation a ses propres classes d'utilitaires pour les chaînes, les tableaux, etc hachages.

Ensemble, ceux-ci peuvent rendre l'apprentissage Symbian C ++ assez difficile, même pour les programmeurs C ++ expérimentés. Les classes de la pile de nettoyage et de chaîne (appelés descripteurs), en particulier, sont généralement considérés ajouter beaucoup de frais généraux au développement de Symbian C.

Comme avec tout système d'exploitation, en plus besoin de connaître la langue maternelle, vous devez également connaître votre chemin autour des bibliothèques qui sont pertinentes à votre domaine du développement. Symbian a un ensemble très riche de bibliothèques couvrant de grandes quantités de fonctionnalité (filetage, IPC, graphiques, multimédia, les réseaux, l'emplacement, la messagerie, PIM, téléphonie, etc.) Une fois habitué aux idiomes Symbian C ++, ces bibliothèques sont généralement très puissants et offrir un ensemble de caractéristiques au moins égale à d'autres plates-formes. Une exception notable est la bibliothèque de l'interface utilisateur, connue sous le nom Avkon, qui est maintenant assez daté par rapport aux cadres correspondants sur d'autres plates-formes.

Qt est destiné à répondre à certaines des questions énumérées ci-dessus qui ont tendance à mettre les gens hors développement natif sur Symbian OS. Plus précisément, il permet un style beaucoup plus moderne de programmation C ++, et comprend un ensemble très avancé des graphiques / bibliothèques de l'interface utilisateur. Aujourd'hui, Qt est disponible pour l'installation sur la plupart des appareils récents Symbian. À l'avenir, il formera la base d'un tout nouveau cadre d'application, qui sera introduit dans la version S ^ 4 la plate-forme (qui devrait être dans les dispositifs de transport 2011).

Une chose que je tiens à souligner est que, à ce stade, Qt ne couvre pas toutes les fonctionnalités des bibliothèques natives. Dans la liste ci-dessus, alors que Qt propose des abstractions de fils, IPC, graphiques, multimédia et réseaux, ses bibliothèques de base ne comprennent pas l'emplacement, la messagerie ou la fonctionnalité PIM. Ainsi, alors que vous pouvez utiliser Qt pour écrire (par exemple) un client FTP, un programme de dessin ou un lecteur multimédia, vous ne pouvez pas l'utiliser pour écrire un client de messagerie. Parce que Qt est C ++, vous peut mélanger avec native Symbian C ++ (descendre à API de la plate-forme pour accéder messagerie par exemple), mais cela est quelque peu complexe.

Cet écart de fonctionnalité est traitée par un projet appelé , qui introduira bibliothèques Qt couvrant des domaines tels que l'emplacement, la messagerie et PIM.

En résumé, si vous êtes nouveau Symbian, Qt est l'environnement de développement d'applications pour apprendre, et ce, a l'avantage supplémentaire que vous pouvez également développer des applications Qt sur d'autres plates-formes (car il est une boîte à outils multi-plateforme).

Autres conseils

Optez pour Qt. Ce sera le sens où tous Nokia va. De plus, votre programme sera alors probablement courir sur Maemo / Meego aussi.

La réponse est un peu en retard, mais ici est de Symbian C ++ sur le Nokia Developer wiki:

  

Symbian C ++, le cadre de programmation native pour Symbian, est   variante idiomatique de C ++ optimisée pour les dispositifs de mémoire basse. Alors que Qt est   maintenant le cadre natif recommandé la création d'applications Symbian, nous   continuer à fournir un accès à des outils pour travailler avec Symbian C ++. Cette   soutien continu permet de maintenir les applications existantes et   les migrer vers les dernières versions de la plate-forme Symbian.

On dirait que Qt est maintenant préféré, et de nouveaux projets devraient utiliser Qt.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top