NAppGUI tiene como objetivo compilar y depurar un programa en cualquiera de las plataformas mencionadas anteriormente sin tocar una sola línea de código. Aprovecha CMake para crear o actualizar un proyecto de compilación a partir del código fuente y utiliza Visual Studio , Xcode o GCC según la plataforma activa. [3]
Desde el inicio del proyecto, el objetivo principal de NAppGUI ha sido simplificar al máximo la ardua tarea de crear aplicaciones con interfaz gráfica en C. La filosofía en la que se basa el proyecto y algunas de sus características son:
Prototipado rápido, evolución y mantenimiento en aplicaciones reales, más allá de los ejemplos sencillos que encontramos en la literatura e Internet.
La interfaz de usuario se describe mediante funciones ANSI-C, eliminando por completo el diseño visual. Este hecho facilita la creación de interfaces dinámicas, garantiza la portabilidad y permite el acceso a la API desde cualquier lenguaje de programación.
Las ventanas se disponen y dimensionan automáticamente, sin que el programador tenga que especificar explícitamente las coordenadas y el tamaño de los controles.
Es posible disponer de una aplicación completa en un único archivo .c, eliminando los archivos de recursos habituales (*.rc, *.xvid, etc.) y sus controladores asociados. El programador tiene total libertad a la hora de definir su propia estructura de archivos.
Sincronización automática de estructuras de datos internas con la interfaz o con canales de E/S. “Enlace de datos”.
Gestión unificada de recursos que facilita la internacionalización. “Recursos”
Traducciones entre idiomas en tiempo de ejecución sin necesidad de reiniciar la aplicación. “Traducción en tiempo de ejecución”.
La versión compilada de NAppGUI ocupa menos de 1Mb, y se distribuye en varias librerías estáticas que generan ejecutables muy pequeños, lo que supone una gran ventaja frente a otras soluciones que requieren la distribución de DLLs pesadas , en ocasiones más grandes que la propia aplicación.
Apariencia Nativa: Las aplicaciones se integrarán en cada sistema respetando su estética original.
Backends. El núcleo de NAppGUI proporciona estructuras y objetos para crear aplicaciones de línea de comandos altamente eficientes en servidores Windows o Linux.
Documentación
La documentación de NAppGUI está disponible en forma de una Guía de inicio rápido introductoria, una Guía del usuario [4] con instrucciones de compilación y creación de una nueva aplicación, una referencia de API [5] y un libro electrónico gratuito [6].
Un conjunto de aplicaciones de muestra demuestra la funcionalidad de NAppGUI y facilita la creación de aplicaciones propias. [7]
Existe un Tutorial de Programación de NAppGUI en YouTube (en español). [8]
Ejemplo de Hola Mundo
El código de ejemplo que se muestra a continuación crea una ventana, agrega etiquetas, botones y widgets de control de texto y reacciona al hacer clic en un botón. Tres capturas de pantalla muestran el programa ejecutándose en las plataformas compatibles. [9]
NAppGUI es un proyecto de código abierto y se distribuye bajo la licencia MIT .
Referencias
^ "API de NAppGUI: SDK C multiplataforma". nappgui.com . Consultado el 12 de enero de 2024 .
^ "Inicio rápido: SDK multiplataforma para C". nappgui.com . Consultado el 12 de enero de 2024 .
^ "Bienvenido a NAppGUI - SDK multiplataforma para C". nappgui.com . Consultado el 12 de enero de 2024 .
^ "Bienvenido a NAppGUI - SDK multiplataforma para C". nappgui.com . Consultado el 12 de enero de 2024 .
^ "API de NAppGUI: SDK C multiplataforma". nappgui.com . Consultado el 12 de enero de 2024 .
^ García Collado, Francisco (7 de enero de 2024). "Dominar NAppGUI" (PDF) . SDK de C multiplataforma: NAppGUI . Consultado el 9 de enero de 2024 .
^ "Die - Cross-platform C SDK". nappgui.com . Consultado el 12 de enero de 2024 .
^ "Tutorial Programación Multiplataforma en C - YouTube". www.youtube.com . Consultado el 12 de enero de 2024 .
^ "Hola mundo: SDK multiplataforma para C". nappgui.com . Consultado el 12 de enero de 2024 .
^ Ringey, Brennan (7 de julio de 2023), stoneface86/nappgui-nim , consultado el 12 de enero de 2024
^ Ogi-kun (3 de mayo de 2023), Ogi-kun / nappgui , consultado el 12 de enero de 2024
^ "comando nappgui-go - github.com/parro-it/nappgui-go - Paquetes Go". pkg.go.dev . Consultado el 12 de enero de 2024 .
^ "Lanzamiento de MVP de biblioteca de interfaz gráfica y abstracción de SO multiplataforma · rochus-keller/Oberon". GitHub . Consultado el 12 de enero de 2024 .
^ "27 alternativas de código abierto a Electron para crear aplicaciones de escritorio utilizando tecnologías web". MEDevel.com: código abierto para atención médica y educación . 13 de julio de 2023. Consultado el 27 de mayo de 2024 .
^ "raygui vs nappgui: ¿comparación de diferencias y reseñas? | LibHunt". www.libhunt.com . Consultado el 27 de mayo de 2024 .