You are on page 1of 5

PROGRAMACION AVANZADA EN JAVA

Nombre: Luis Gonzlez Modulo: 5to A

Investigue lo siguiente sobre por lo menos 5 kits de componentes para la creacin de interfaces grficas (WIDGETS)

Componente GTK+
Conceptos Bsicos
GTK+ o The GIMP Toolkit es un conjunto de bibliotecas multiplataforma para desarrollar interfaces grficas de usuario (GUI), principalmente para los entornos grficos GNOME, XFCE y ROX aunque tambin se puede usar en el escritorio de Windows, MacOS y otros. Inicialmente fueron creadas para desarrollar el programa de edicin de imagen GIMP, sin embargo actualmente se usan mucho por muchos otros programas en los sistemas GNU/Linux. Junto a Qt es uno de las bibliotecas ms populares para X Window System. Licenciado bajo los trminos de LGPL, GTK+ es software libre y es parte del proyecto GNU.

Lenguaje en que fueron escritos


Fue escruto en C. GTK+ se ha diseado para permitir programar con lenguajes como C, C++, C#, Java, Ruby, Perl, PHP o Python.

Libreras -bindings- que se usan.


GTK+ se basa en varias bibliotecas del equipo de GTK+ y de GNOME:

GLib. Biblioteca de bajo nivel estructura bsica de GTK+ y GNOME. Proporciona manejo de estructura de datos para C, portabilidad, interfaces para funcionalidades de tiempo de ejecucin como ciclos, hilos, carga dinmica o un sistema de objetos.

GTK. Biblioteca la cual realmente contiene los objetos y funciones para crear la interfaz de usuario. Maneja widgets como ventanas, botones, mens, etiquetas, deslizadores, pestaas, etc. GDK. Biblioteca que acta como intermediario entre grficos de bajo nivel y grficos de alto nivel. ATK. Biblioteca para crear interfaces con caractersticas de una gran accesibilidad muy importante para personas discapacitadas o minusvlidos. Pueden usarse utileras como lupas de aumento, lectores de pantalla, o entradas de datos alternativas al clsico teclado o mouse. Pango. Biblioteca para el diseo y renderizado de texto, hace hincapi especialmente en la internacionalizacin. Es el ncleo para manejar las fuentes y el texto de GTK+2. Cairo. Biblioteca de renderizado avanzado de controles de aplicacin

Entornos de Escritorio y/o Sistemas


GNOME est basado en GTK+, lo que significa que los programas de GNOME usan GTK+ Xfce est basado en GTK+ LXDE est basado en GTK+, significa "Lightweight X11 Desktop Environment" ROX Desktop un escritorio ligero, con caractersticas de la GUI de RISC OS GPE Palmtop Environment Maemo (Nokia's Internet-tablet framework) Access Linux Platform (sucesor de la plataforma Palm OS PDA) One Laptop Per Child usa GTK+ y PyGTK

Componente Qt
Conceptos Bsicos
Qt es una biblioteca multiplataforma para desarrollar interfaces grficas de usuario y tambin para el desarrollo de programas sin interfaz grfica como herramientas de la consola y servidores. Qt es utilizada principalmente en KDE, Google Earth, Skype, Qt Extended, Adobe Photoshop Album, VirtualBox y Opie. Es producido por la divisin de software Qt de Nokia, que entr en vigor despus de la adquisicin por parte de Nokia de la empresa noruega Trolltech, el productor original de Qt, el 17 de junio de 2008.1 Funciona en todas las principales plataformas, y tiene un amplio apoyo. El API de la biblioteca cuenta con mtodos para acceder a bases de datos mediante SQL, as como

uso de XML, gestin de hilos, soporte de red, una API multiplataforma unificada para la manipulacin de archivos y una multitud de otros para el manejo de ficheros, adems de estructuras de datos tradicionales.

Lenguaje en que fueron escritos.


Qt utiliza el lenguaje de programacin C++ de forma nativa, adicionalmente puede ser utilizado en varios otros lenguajes de programacin a travs de bindings.

Libreras -bindings- que se usan.


Qt dispone de una serie de bindings para diversos lenguajes de programacin:

PyQt Bindings GPL/Comercial para Python. PySide8 LGPL bindings para Python de OpenBossa (subsidiario de Nokia). PythonQt9 LGPL bindings para Python. Qyoto10 Bindings para C# u otros lenguajes .NET. Existe un conjunto adicional de bindings Kimono11 para KDE. QtRuby12 Bindings para Ruby. Existe un conjunto adicional de bindings, Korundum para KDE. Qt Jambi13 Bindings para Java. QtAda14 Bindings para Ada. FreePascal Qt415 Bindings para Pascal. Perl Qt416 Bindings para Perl. PHP-Qt Bindings para PHP. Qt Haskell17 Bindings para Haskell. lqt18 Bindings para Lua. DaoQt19 Bindings para Dao. QtD20 Binding para D.

Entornos de Escritorio y/o Sistemas.


Qt se encuentra disponible para sistemas tipo unix con el servidor grfico X Window System (Linux, BSDs, Unix), para Apple Mac OS X, para sistemas Microsoft Windows, para Linux empotrado (en ingls Embedded Linux, para sistemas integrados como PDA, Smartphone, etc.) y para dispositivos que utilizan Windows CE5 Qt Software anunci el 20 de octubre de 2008 una versin de Qt para la plataforma S60.6 7 Adicionalmente tambin est disponible QSA (Qt Scripts for Applications), que, basndose en ECMAScript/JavaScript, permite introducir y crear scripts en las aplicaciones creadas con Qt.

Hay tres ediciones de Qt disponibles en cada una de estas plataformas, llamadas:


GUI Framework edicin con nivel reducido de GUI, orientado a redes y bases de datos. Full Framework edicin completa comercial Open Source edicin completa Open Source

Componente SWT Conceptos Bsicos


SWT (siglas en ingls de Standard Widget Toolkit) es un framework para crear interfaces grficas en Java (como Swing o Awt) que crea a travs de JNI (Java Native Interface) interfaces grficas nativas del Sistema Operativo en donde ejecutemos nuestra aplicacin SWT. Esto quiere decir que con el mismo cdigo visualizaremos en cada Sistema Operativo nuestras ventanas como si hubieran sido creadas para ese SO en especfico. Ventajas:

* Ya que crea nativamente la GUI dependiendo del SO, es ms rpido que Swing

* Consume menos recursos * La interfaz grfica se ver como las dems aplicaciones de tu SO * Est en constante desarrollo Desventajas:

Muy escasa documentacin Ya que SWT fue creado por la Fundacin Eclipse y pensada para el desarrollo de Eclipse IDE, hay controles o widgets que no consideraron ya que Eclipse no los ocupa, aunque sigue en desarrollo. Se tienen que agregar las clases al proyecto a desarrollar, no viene por default en las libreras de Java

Componente Swing
Conceptos Bsicos
Swing es una biblioteca grfica para Java. Incluye widgets para interfaz grfica de usuario tales como cajas de texto, botones, desplegables y tablas.

Ventajas: El diseo en Java puro posee menos limitaciones de plataforma. El desarrollo de componentes Swing es ms activo. Los componentes de Swing soportan ms caractersticas.

Desventajas: La mayora de los browsers no incluyen clases swing, por lo que es necesario utilizar un plugin java. Los componentes swing generalmente son ms lentos y presentan ms problemas debido a que estn hechos en Java puro, y suelen presentar problemas relacionados con vdeo en varias plataformas. No siempre tienen el mismo aspecto que en el sistema donde fueron diseados.