1
Índice
Introducción
Reseña técnica
Ejemplo de aplicación
2
Introducción
Es una librería para crear interfaz gráfica de usuario en Haskell
Orientada a la industria
Está construida sobre wxWidgets que es una librería de C++
Permite crear aplicaciones para Win32, Mac OS X, GTK+, X11, Motif, WinCE…
3
Introducción
Soporta Windows, GTK (Linux) y MacOS
El núcleo de su interfaz se desarrolló a partir de WxEiffel, luego la mayoría de sus Widgets están soportados
En Enero del 2009 apareció la versión 11.0
WxHaskell no soporta la programación
multihebra
WxHaskell consta de una página oficial llena de documentación que fue creada en agosto del 2008
4
Permite crear botones, cajas de texto, menús, etc
Permite especificar la disposición física de los componentes utilizando espacios de trabajo al estilo del lenguaje Java (Los espacios de trabajo sirven para organizar los Widgets)
También se usan eventos como el caso de Java (Por ejemplo se lanza un evento cuando presionamos un botón)
Introducción
5
Widgets
Los Widgets son los componentes básicos de la interfaz gráfica de usuario
Un Widget es un componente gráfico, o control, con el cual el usuario interactúa.
Existen dos tipos de Widgets:
Ventanas : Son los Widgets que contienen otros Widgets
Controles: Widgets normales (como una ventana normal con los botones cerrar, minimizar y maximizar)
6
wxWidgets
Fue diseñado por Thellinni en Italia 2008 en el instituto de Aplicaciones de la Inteligencia Artificial de la universidad St. Andrews (Escocia)
Es un software libre (última versión 2.8.9 salió el 22 de septiembre de 2008)
Soporta varias plataformas
También tiene una ligadura para lenguajes como Python o Perl
Cuenta con soporte, documentación, ayuda en línea, foros …
7
wxWidgets
Se encuentra entre los 25 proyectos más activos de código abierto
La biblioteca es madura, lleva en desarrollo desde 1992
Permite gráficos 2D, 3D con openGL, Bases de datos, Redes, Impresión, Hebras …
Cuenta con una versión extendida para dispositivos como PDAs y teléfonos celulares
Tiene un API orientada a objetos que es fácil de aprender y de utilizar
8
Desventajas WxWidgets
WxWidgets es software libre, por lo tanto depende del tiempo y el esfuerzo de los que lo han creado.
Es una biblioteca muy grande.
Consta solo de una capa para el API nativa de cada SO (Es decir: la apariencia dependerá de en que SO se esta ejecutando)
Abusa de la utilización de macros para realizar ciertas operaciones
No cuenta con soporte para características modernas de C++ como manejo de excepciones
9
Ventajas WxHaskell
Poder utilizar características importantes de Haskell, como el polimorfismo paramétrico, funciones de orden superior, evaluación perezosa
Los programas resultantes tienden a ser más cortos y más elegantes que sus homólogos en C++ por ejemplo
Posibilidad de interactuar con código Haskell
10
Ejemplo de aplicación: Dazzle
Es un programa que simula las creencias de las redes bayesianas
Fue desarrollado por el grupo Decision Support Systems de la universidad de Utrecht (Holanda)
Herramienta para la construcción, edición y análisis de redes bayesianas
Consta de más de 4000 líneas de código específico WxHaskell
Página siguiente |