2009-10-14 83 views

Respuesta

14

RMI de Java es una tecnología específica. CORBA tiene implementaciones para muchos idiomas. Puede usar CORBA para compartir objetos entre programas escritos en diferentes idiomas (por ejemplo, C++ y Java).

CORBA usa IDL (Lenguaje de definición de interfaz) para separar la interfaz de la implementación. RMI solo usa interfaces Java.

Debido a que CORBA no está vinculado a un idioma en particular, los tipos de datos no siempre se corresponden exactamente con los tipos utilizados por su lenguaje de programación (por ejemplo, un IDL largo es un int en Java).

Los programas RMI pueden descargar nuevas clases de JVM remotas. CORBA no tiene este mecanismo para compartir códigos.

Ha pasado un tiempo, pero recuerdo (de portar una aplicación Java de CORBA a RMI) que CORBA (o al menos la implementación que estábamos usando) se ocupó de una gran cantidad de la sincronización necesaria para el código simultáneo, que era algo que tuvimos que hacer explícitamente cuando usamos RMI.

RMI puede configurarse para operar a través de IIOP (el protocolo utilizado por CORBA).

Cuestiones relacionadas