c++ - library - Desarrollo de GUI: Qt vs GTK
qt gui (1)
Soy nuevo en la programación con interfaz gráfica de usuario. Cifro principalmente en C ++ y necesito que mi código y GUI sean independientes del sistema operativo, así que después de investigar un poco, no puedo decidir entre Qt o GTK. Leí que GTK es más eficiente con la memoria, pero algunos sitios dijeron que era antes de Qt 4. Además, Qt tiene el IDE del creador de Qt, que creo que es un IDE maravilloso para C ++. ¿Alguien sabe más sobre los pros y los contras de cada uno? Gracias
Yay, otro Lib_One vs Lib_Two tipo de preguntas. Me encanta responder a esto.
Requisitos
En primer lugar, no existe un juego de herramientas mágico perfecto que se adapte a las necesidades de todos. Su elección debe basarse en lo que está tratando de hacer .
- ¿Simplemente quieres un GUI Toolkit? ¿O quieres un marco de desarrollo de aplicaciones completo con API para gráficos, sonido, imagen IO, etc.?
- ¿Estás apuntando a una plataforma específica?
- ¿Necesitas dulces extra para los ojos?
- ¿Qué quiere tu cliente?
- ¿Estás apuntando a sistemas embebidos o a la PC?
Gui Toolkit
Tanto GTK + como Qt son kits de herramientas GUI orientados a objetos considerablemente maduros. Ambos son de código abierto, multiplataforma y tienen grandes comunidades activas. GTK + se utiliza como el kit de herramientas estándar para los entornos de escritorio GNOME, LXDE y Xfce, mientras que Qt se usa para KDE. Ambos se han utilizado para desarrollar aplicaciones profesionales y están probados en el tiempo.
Compatibilidad multiplataforma
Ambos kits de herramientas son compatibles con casi todas las plataformas de PC convencionales.
Plataformas compatibles con ambos:
- Windows XP
- Windows Vista
- Windows 7
- Mac OS X
- Linux / Unix
Además Qt también es compatible con:
- Symbian S60
- Windows CE
- WebOS
- Androide
- Teléfono Ubuntu
Actuación
Esto es seriamente discutible. Los evangelistas de GTK + señalan el alto consumo de memoria de las aplicaciones Qt, mientras que los fanáticos de Qt se burlan del tiempo de inicio del tiempo de ejecución GTK. Pero, en general, no hay una gran diferencia. Ambos funcionan lo suficientemente rápido en PC modernas.
Uso exclusivo y enlaces de idioma
GTK + tiene licencia LGPL, por lo que puede usarse para aplicaciones propietarias. Qt tiene licencia triple con LGPL, GPL y una licencia propietaria. Si usa LGPL o compra la licencia propietaria, puede usar Qt para aplicaciones propietarias.
Ambos Toolkits tienen enlaces para todos los idiomas populares. Enlaces notables incluyen GTK #, la unión de C # para GTK +, que ha sido respaldado por el Proyecto Mono. Y Qt-Jambi, el enlace Qt para Java, que se actualiza activamente.
Recursos
Ambos kits de herramientas están ampliamente documentados. GTK + tiene su propia documentación (GTK-Doc), y Qt está documentado por Nokia. Sin embargo, Qt puede tener una ligera ventaja aquí porque cuenta con los enormes recursos y mano de obra de una gran corporación (Nokia), mientras que GTK + solo está documentado por sus colaboradores. Hay tutoriales en muchos lugares en internet para ambos. Prefiero ZetCode .
Conclusión
Como puede ver, ambos son más o menos lo suficientemente buenos. La elección realmente depende del punto que hice antes: ¿cuáles son sus requisitos ?