7.1. Tecnologías y estándares

En el desarrollo de GNOME se optó por el lenguaje C, aunque no diera un sistema claro de orientación a objectos, ese sería un primer plan, hacerlo, pero de es hablaremos mas tarde. Como se comentó en el comienzo del texto se decidió usar GTK como biblioteca base desde la que partir. GTK tiene un sistema de Widgets que son las unidades que se representan en pantalla.

GTK hace uso de la biblioteca glib, que no hace referencia a ningún aspecto gráfico. Esta biblioteca ofrece cantidad de funcionalidades como la gestión de listas enlazadas y derivados, poniendo a la disposición del desarrollador un objecto y una serie de funciones para el manejo de las listas, tablas, etc...

GTK use también Pango. Pango es un sistema de representación de caracteres espectacular compatible con la norma utf8. Se pueden representar caracteres en cualquier idioma y lenguaje, incluso idiomas que se escriben de derecha a izquierda, de todo eso se encarga Pango y GTK, haciendo transparente todo esto al desarrollador. Fascinante, ¿no?.

Bonobo es el sistema de componente de GNOME, con ella podemos empotrar partes de una aplicación en otra, por ejemplo, un gráfico dentro de una hoja de calculos. En GNOME 2.0 Bonobo se ha consolidado desde la versión 2.0 de GNOME, permitiendo uno de los objetivos de GNOME, crear un escritorio con capacidad de ser distribuido en red. Bonobo esta basado en el estándar CORBA, y ataña todas sus particularidades como la definición de los interfaces de un componente mediante el lenguaje IDL.

XML en GNOME está muy estendido, se usa para cantidad de cosas. libXML es la biblioteca que ofrece el acceso facil al mundo del XML, ofreciendo una agradable y cuidada colección de funciones y objetos.

La manera en que las aplicaciones guardan sus datos de configuración, como preferencias elegidas por el usuario es mediante GConf, un sistema de almacenamiento de datos muy potente, es capaz de almacenar los datos en un servidor LDAP y así serán compartidos por los usuarios de una misma red, y así tener una configuración similar. O cada usuario tener su configuración personalizada en el servidor LDAP y desde el punto en el que acceda de la red tendrá su escritorio configurado de la forma en que el desee.

GNOME-VFS son las siglas de GNOME Virtual File System, un sistema de ficheros virtual que posibilita el acceso a ficheros no solo locales sino también ficheros en un servidor ftp o ssh por ejemplo de una forma transparente al desarrollador, posibilitando así el accesso a datos remotos.

El accesso a Bases de Datos esta suplido con libgnomedb, desarrollada teniendo en cuanta que existirán distintos tipos de accesos, es decir, a bases de datos MySQL por ejemplo o a bases de datos Postgres.