Desarrollo de
aplicaciones en GNOME
Alejandro Valdés Jimenez
[email protected]
October 23, 2009
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
1 / 17
Agenda
1 Algunos conceptos
2 Herramientas
3 Ejemplos
4 Recursos
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
2 / 17
Algunos conceptos
GUI
Graphical User Interface.
Permite interacción con una computadora a través de ventanas,
botones, etc.
Acciones dependen de la manipulación de estos objetos, através del
teclado, ratón.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
3 / 17
Algunos conceptos
GUI
Widget.
Nombre genérico para botones, ventanas, barras de menú, etc.
Usuario interactúa con ellos.
Pueden contener otros widgets.
Signals.
Un evento produce una señal (clicked, edited, etc).
Callbacks.
Función llamada por una señal.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
4 / 17
Algunos conceptos
Programación por eventos
Ejecución del programa depende de los eventos que ocurran
(presionar un botón, cerrar una ventana, etc).
GTK funciona de esta manera.
Loop principal (gtk.main()) a la espera de algún evento y pasar control
a alguna función (callback).
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
5 / 17
Algunos conceptos
Programación por eventos
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
6 / 17
python
Herramientas
VHLL (very high-level programming language).
Interpretado y OO.
Muy fácil de leer y mantener.
Bastante documentación.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
7 / 17
GTK
Herramientas
Toolkit multiplataforma para crear interfaces gráficas de usuario,
escrito en C.
Bindings en C++, Java, perl, python, etc.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
8 / 17
pygtk
Herramientas
Binding de GTK+ escrito en python.
Parte del proyecto GNOME.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
9 / 17
glade
Herramientas
Asistente para diseño de GUIs.
Almacena información en archivos XML.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
10 / 17
libglade
Herramientas
Cargar y procesar archivos XML.
Separa parte lógica de la aplicación.
Modificar interfaz (layout) sin necesidad de modificar código fuente.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
11 / 17
gtkbuilder
Herramientas
GtkBuilder similar a Libglade, pero?
Libglade no forma parte de GTK.
Libglade sigue desarrollo independiente (demora en soporte de nuevos
widget y propiedades).
Desarrolladores de GTK mantienen esta bilioteca integrada en GTK.
gtk-builder-convert: Convierte archivos glade para ser cargados por
GtkBuilder.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
12 / 17
devhelp
Herramientas
Programa de ayuda para desarrolladores (python-gtk2-doc).
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
13 / 17
HIG - Human Interface Guidelines
Herramientas
Proyecto de usabilidad para GNOME.
”Recomienda” como debemos crear las interfaces, para que:
Los usuarios debieran aprender a usar de forma mas rápida la
aplicación.
La aplicación sea atractiva.
La aplicación sea accesible para todos
La aplicación se vea bien con los cambios de temas de escritorio
etc.
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
14 / 17
Manos a la obra!
Ejemplos
free v1
free v2 (con señales)
free v3 (con libglade)
free v3.1 (con gtkbuilder)
free v4 (clases)
gconf (preferencias de usuario)
gettext (internacionalización)
terminal remoto (telnet y telnet)
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
15 / 17
Recursos
Enlaces
Glade: http://glade.gnome.org/
Python: http://www.python.org/
PyGTK: http://www.pygtk.org/
GNOME: http://www.gnome.org/
GNOME Chile: http://www.gnome.cl/
FSF: http://www.fsf.org/
gettext: http://www.gnu.org/software/gettext/
gconf: http://projects.gnome.org/gconf/
HIG: http://library.gnome.org/devel/hig-book/stable/
Lista de correo
http://mail.gnome.org/mailman/listinfo/gnome-cl-list
[email protected]
Alejandro Valdés Jimenez ()
Desarrollo de aplicaciones en GNOME
October 23, 2009
16 / 17
Comentarios de: Desarrollo de aplicaciones en GNOME (0)
No hay comentarios