S60 est essentiellement une infrastructure d'interface utilisateur et une collection de composants middleware sur le système d'exploitation Symbian. Historiquement, Symbian fournissait le système d'exploitation de base (noyau, communications, services multimédias, moteurs d'application de base, interface de référence) et les fabricants d'appareils ajoutaient leur propre code pour se différencier de la concurrence et optimiser leurs appareils pour un usage particulier.
S60 est l'un de ces modules, développé à l'origine pour les téléphones destinés à une utilisation d'une seule main avec un clavier. Il y a également eu d'autres frameworks d'interface utilisateur sur Symbian OS, par exemple les et Series 90, UIQ et MOAP(S) de Nokia. Maintenant que Symbian passe au mode de fonctionnement Symbian Foundation, S60 et Symbian OS sont essentiellement fusionnés en une plate-forme Symbian Foundation. Les autres cadres de l'interface utilisateur ont été abandonnés. Mais les appareils actuellement sur le marché ont encore la distinction entre Symbian OS et S60.
- Si j'écrire des applications dans Symbian C++ ou Java ME est pour le Symbian OS ou la plate-forme S60? Puis-je directement écrire des applications pour le système d'exploitation Symbian sans passer par la couche S60?
Dépend des API que vous utilisez.
Avec Java ME, il est plus facile d'écrire des applications qui ne reposent pas sur des modules complémentaires spécifiques à S60. En C++, il est probable que vous ayez besoin d'une interface utilisateur pour votre application et que vous deviez utiliser l'interface utilisateur S60 Avkon. Bien que, si vous voulez plus d'interface utilisateur indépendante de la plate-forme pour votre application C++, jetez un oeil à Qt for S60.
Dans tous les cas, écrire des applications C++ pour que le même fichier binaire puisse être exécuté sur tous les appareils basés sur Symbian OS est pratiquement impossible. En Java, "écrire une fois partout" fonctionne en théorie, mais en pratique c'est plus comme "écrire une fois le test partout et essayer de contourner les différences entre les périphériques".
"Écrire des applications C++ pour que le même fichier binaire puisse être exécuté sur tous les appareils basés sur Symbian OS n'est pratiquement pas possible" ... Pourquoi? –
@Kevin Boyd: Pauses de compatibilité binaire entre Symbian OS 9.1 et pré-9.1; Si vous ciblez un sous-ensemble de périphériques Symbian OS comme les périphériques S60 3rd Edition, la compatibilité binaire est possible. – laalto
Il existe encore des cas où la compatibilité est rompue entre les périphériques 3rd et FP1 ou FP2. Les paramètres SyncML et Bluetooth sont des choses qui me viennent à l'esprit. – Riho