Pregunta

Estoy planeando desarrollar en los sistemas Symbian, pero no estoy familiarizado con él. Sé que (podría ser) la forma más popular de desarrollar en Symbian es Symbian C ++, y también he oído hablar de Qt. ¿Cual es la diferencia entre ellos? Si quiero que mi aplicación se ejecuta en la mayoría de los sistemas Symbian, que debería elegir? Alguien me puede dar algunos consejos generales?

Gracias ~

¿Fue útil?

Solución

Symbian C ++ es el dialecto de C ++ en la que el sistema operativo está escrito, todo el camino desde el núcleo hasta el marco de la aplicación. Se diferencia de C ++ estándar en un número de maneras, algunas de las cuales figuran en esta lista:

    no se utilizan
  • Excepciones; Symbian utiliza su propio método de pila desenrollar llama 'hojas'. La razón principal de esto es que el estándar C ++ todavía estaba en desarrollo cuando se creó Symbian, y las excepciones fueron en ese momento no es ampliamente apoyado por los compiladores.
  • Debido a la falta de apoyo para las excepciones, la gestión de memoria asignada dinámicamente utiliza un mecanismo patentado llamado la pila de limpieza.
  • A pesar de un puerto de la STL está ahora disponible para Symbian, este es un desarrollo reciente, por lo que el sistema operativo tiene sus propias clases de utilidad para las cadenas, arrays, hashes etc.

En su conjunto, estos pueden hacer el aprendizaje Symbian C ++ bastante difícil, incluso para los programadores sazonados C ++. Las clases de pila de limpieza y de cadena (conocidos como descriptores), en particular, se ven generalmente añadir un buen montón de gastos generales para el desarrollo de Symbian C ++.

Al igual que con cualquier sistema operativo, además de la necesidad de conocer el idioma nativo, también hay que saber cómo funciona todo las bibliotecas que son relevantes para su área de desarrollo. Symbian tiene un muy amplio conjunto de bibliotecas que cubren grandes cantidades de funcionalidad (roscado, IPC, gráficos, multimedia, redes, localización, mensajería, PIM, telefonía, etc.) Una vez que se acostumbre a los modismos de la Symbian C ++, estas bibliotecas son generalmente muy potente y ofrecen un conjunto de características por lo menos igual a otras plataformas. Una excepción notable es la biblioteca de interfaz de usuario, conocido como Avkon, que está ahora bastante anticuado cuando se compara con los marcos correspondientes en otras plataformas.

Qt se pretende abordar algunos de los problemas mencionados anteriormente que tienden a poner a la gente en el desarrollo nativo Symbian OS. En concreto, se permite a un estilo mucho más moderno de programación C ++, e incluye un conjunto muy avanzado de gráficos bibliotecas / IU. Hoy en día, Qt está disponible para su instalación en la mayoría de los dispositivos Symbian recientes. Mirando hacia el futuro, formará la base de un nuevo marco de aplicación, que será introducido en el S ^ versión 4 del la plataforma (se espera que sea en los dispositivos de envío a partir de 2011).

Una cosa que debo señalar es que, en este punto, Qt no cubre toda la funcionalidad de las bibliotecas nativas. De la lista anterior, mientras que las ofertas de Qt abstracciones de hilos, IPC, gráficos, multimedia y redes, sus bibliotecas del núcleo no incluyen localización, mensajería o la funcionalidad de PIM. Así, mientras que se puede usar Qt de escritura (por ejemplo) un cliente FTP, un programa de dibujo o un reproductor de medios, no puede usarlo para escribir un cliente de mensajería. Debido a que Qt es C ++, puede mezcla con Symbian C ++ nativo (de descender a APIs de la plataforma de mensajería de acceso, por ejemplo), pero esto es algo complejo.

Esta brecha funcionalidad está siendo tratado por un proyecto llamado Qt Mobility , que introducirá bibliotecas Qt que cubren áreas tales como la ubicación, la mensajería y PIM.

En resumen, si usted es nuevo en Symbian, Qt es el entorno de desarrollo de aplicaciones para aprender, y hacer lo que tiene la ventaja adicional de que también se puede desarrollar aplicaciones Qt en otras plataformas (ya que es un conjunto de herramientas multiplataforma).

Otros consejos

Ir para Qt. Será la dirección donde todos los Nokia va. Además de su programa entonces probablemente funcionar con Maemo / MeeGo también.

Hay una comparación de 7 conjuntos de herramientas disponibles -Symbian C ++, Qt, Open C \ C ++, Python, Reproductores, Java ME, Flash Lite-aquí: Guía de enganche excursionistas al Espacio Tiempo de ejecución

La respuesta es un poco tarde, pero aquí está de Symbian C ++ en el Nokia desarrollador wiki:

  

Symbian C ++, el marco de programación nativo para Symbian, es una   variante idiomática de C ++ optimizado para dispositivos de baja memoria. Si bien es Qt   Ahora el marco nativa recomienda la creación de aplicaciones Symbian, nos   seguirá proporcionando acceso a herramientas para trabajar con Symbian C ++. Esta   apoyo continuo que permite mantener las aplicaciones heredadas y   migrar a las últimas versiones de la plataforma Symbian.

Suena como Qt Actualmente se prefiere, y los nuevos proyectos debe usar Qt.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top