RMI (Remote Method Invocation ) é a forma tradicional de Java de comunicação remota , prorrogado por RMI- IIOP (ou " RMI sobre IIOP " ) , a fim de permitir a interoperability.RMI faz parte de um grupo de linguagens que usa a " programação orientada a objeto" estilo (OOP ), onde um "objeto" é uma estrutura de dados. C + + é um outro exemplo bem conhecido de uma linguagem de programação neste estilo. RMI : Introduzido em 1997
A linguagem de programação não é esse " Java ".
RMI é uma variante orientada a objeto de Remote Procedure Call ( RPC) , através do qual objetos Java comunicar. Tinha a desvantagem , quando pela primeira vez criado , que não permitem a interoperabilidade de Java e não-Java objetos.
Próprio Java, uma linguagem de programação , tinha sido desenvolvido por James Gosling , da Sun Microsystems, em 1994 . A Oracle adquiriu a Sun em 2009.
Outras siglas Decoded
Este foi o local de Oráculos anteriores.
IIOP é o Internet Inter- ORB Protocol , um importante subconjunto do padrão CORBA.
Um ORB é um " Object Request Broker " e CORBA é "Common Object Request Broker Architecture ", o padrão aberto para computação heterogênea.
Normas para CORBA são criados e publicados por um consórcio de indústrias , o Object Management Group (OMG) . Centenas de usuários e fornecedores participam de OMG .
Assim, a fim de introduzir inter- operabilidade , Oracle Corporation tive que re- trabalho RMI para cumprir com CORBA , que é o RMI- IIOP é sobre.
Sun Desenvolvimento
da Oracle colaborou com a IBM.
Assim, em 1998, a Sun lançou o Java RMI- IIOP : . uma característica importante das quais é que ele pode ser usado sem aprender a linguagem de definição de CORBA Interface ( IDL ),
Escolhas para programadores
Há uma bifurcação na estrada de programação Java.
Com a disponibilidade de RMI- IIOP , os programadores que já estavam familiarizados com Java RMI tinha na sua essência três opções.
Eles poderiam ignorar a extensão IIOP , e desenvolver aplicações utilizando CORBA IDL , definindo o cliente eo aplicações de servidor utilizando a linguagem de programação familiar a eles .
Ou , eles poderiam ignorar a extensão IIOP e IDL da mesma forma, e simplesmente ficar dentro do universo da linguagem de programação Java, usando Java RMI para permitir a comunicação entre objetos Java tanto entre máquinas virtuais e entre máquinas físicas.
Mas , finalmente , eles poderiam usar a linguagem de programação Java com a sua opção de compilador de IIOP . A empresa disse que isso iria permitir que o programador para "manter aplicações antigas escritas em outras linguagens de programação. "
Crítica
" Não, obrigado, apenas a banana . "
Vale ressaltar que todo o estilo de programação orientada a objeto foi alvo de críticas nos últimos anos. O inventor de uma linguagem não- OOP chamado Erlang , Joe Armstrong, disse: " O problema com linguagens orientadas a objetos é que eles têm todo esse ambiente implícito que eles carregam com eles que você queria uma banana , mas o que você conseguiu foi . um gorila segurando a banana e toda a selva. "