CORBA

De Wiki GNOME Chile
Revisión a fecha de 15:34 31 jul 2006; FelipeBarros (Discusión | contribuciones)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Contenido

CORBA

Como se comentaba anteriormente, CORBA tiene un papel estelar en las tecnologías que se han implementado en GNOME.


ORBit

ORBit es un desarrollo creado y mantenido por los propios desarrolladores de GNOME, al encontrarse, allá por el año 1997, con que las implementaciones de CORBA existentes no cubrían las necesidades del proyecto GNOME. Así, ORBit es una implementación de CORBA con dos objetivos principales: la velocidad y la ligereza.

Dichos objetivos han sido implementados con éxito, haciendo de ORBit uno de los ORBs (implementación de CORBA) más rápidos del mercado. Eso si, en detrimento de algunas características, como por ejemplo los servicios CORBA, o las comunicaciones cifradas.

ORBit ofrece un sistema de objetos distribuido, junto con una serie de herramientas que useramos para integrar CORBA en nuestras aplicaciones. La forma de desarrollar es muy sencilla: primero, se escribe un fichero IDL (Interface Definition Language) en el que se especifican los interfaces CORBA que implementaremos en nuestra aplicación. Seguidamente, se usa el comando orbit-idl para generar los cabos y los esqueletos que usaremos luego en la implementación de dichos interfaces y en las aplicaciones que hagan uso de esos interfaces.


OAF

OAF constituye otro desarrollo del proyecto GNOME, que viene a cubrir la carencia de ORBit en cuanto al sistema de activación de objetos CORBA.

OAF es la evolución de libgnorba (el sistema de activación de objetos de GNOME 1.2.x), y viene a solucionar todas las carencias encontradas en libgnorba a lo largo de cerca de tres años de uso. Una de las cosas que se ha solucionado es la dependencia con el sistema X Window, algo que limitaba bastante el uso de libgnorba en aplicaciones no GNOME.

Otro añadido importante es el sistema de consulta que incorpora OAF, que permite a las aplicaciones obtener una lista de componentes que cumplan determinadas condiciones.


Bonobo

Bonobo es, sin duda, la estrella de GNOME, y es el resultado del trabajo que se ha hecho para cubrir el objetivo inicial del proyecto GNOME: desarrollar un sistema de componentes para UNIX/Linux. Y, de momento, parece ser que se ha conseguido, pues Bonobo ha sido ya adoptado, junto con GNOME, por las versiones más conocidas de UNIX/Linux.

Bonobo está, como no, basado en CORBA, y, por tanto, lo que ofrece es una serie de interfaces CORBA orientados a las aplicaciones visuales y documentos compuestos. Así, podemos encontrar interfaces como Bonobo::Control, que permite la creación de controles ("widgets componentizados"), o Bonobo::Embeddable, que permite la inserción de componentes dentro de documentos compuestos (al estilo de las aplicaciones de MS Office).

Junto con estos interfaces visuales, se ofrecen tambien otros interfaces suplementarios que se integran con estos, como es el caso de los Bonobo::Stream, que permite el intercambio de flujos de datos entre aplicaciones, o los Bonobo::Moniker, que implementan un sistema de referenciación de objetos muy potente.

Una cosa a tener en cuenta acerca de Bonobo es que sus desarrolladores lo han diseñado de forma que sea totalmente independiente de la implementación, por lo que sería posible hacer una implementación de Bonobo para KDE, por ejemplo, o para Windows. De momento, la única implementación que existe es la que comunmente se conoce como Bonobo, que está realizada para el proyecto GNOME, y usa GTK+.

Herramientas personales
Espacios de nombres

Variantes
Acciones
Navegación
Herramientas