Corba vs RMI
Der er ingen tvivl om populariteten af Java blandt udviklere. Med Java er mulighederne udvidet endnu mere. Java's ekstremt bærbare karakter er en stor fordel. Det integreres godt med webbrowsere, hvilket gør det ideelt til webudviklingssatser. Hvad udviklerne angår, er det let at bruge og implementere. Dette er den vigtigste grund til, at mange udviklere omfavner teknologien.
RMI og CORBA er to af de mest markante og hyppigt anvendte distributionssystemer i Java. Begge er meget effektive, men med deres egne fordele og ulemper. Applikationerne, der bruger disse systemer, er enormt ekspansive og næsten ubegrænsede. Som udvikler til et bestemt projekt kan det være en vanskelig beslutning at vælge mellem de to.
Common Object Request Broker Architecture eller blot CORBA har mange adaptere. Det kan også ringe til mange sprog med en CORBA-grænseflade, da det er udviklet til at være uafhængigt af hvilket sprog, et program, det er skrevet i. Det er i direkte konkurrence til RMI, men CORBA tilbyder bedre portabilitet.
CORBA kan let integreres med ældre systemer og nyere systemer, der understøtter CORBA. For udviklere af JAVA giver teknologien imidlertid mindre fleksibilitet, da den ikke tillader, at eksekverbare filer kan videresendes til fjernsystemer.
CORBA er en omfattende familie af standarder og grænseflader. At udforske detaljerne i disse grænseflader er en ganske afskrækkende opgave.
RMI er en forkortelse af Remote Method Invocation. Denne teknologi blev frigivet med Java 1.1, faktisk tilgængelig siden JDK 1.02, og den lader Java-udviklere påberåbe sig objektmetoder og tillader dem at blive udført på eksterne JVM'er eller Java Virtual Machines. Dens implementering er temmelig let, især hvis du kender Java meget godt. Det er ligesom at kalde en proces lokalt; dens opkald er dog kun begrænset til Java.
Efter at have nævnt RMI's Java-centriske egenskab, er den eneste måde at integrere koder på andre sprog i RMI-distributionssystemet at bruge en grænseflade. Denne grænseflade kaldes Java-native-kode-grænsefladen. Imidlertid kan det være ekstremt komplekst og oftere end ikke resultere i skrøbelige koder.
RMI har vigtige funktioner, som CORBA ikke har, navnlig evnen til at sende nye objekter, kode og data over et netværk og for eksterne virtuelle maskiner til fejlfri håndtering af nye objekter
Når man sammenligner RMI og CORBA, er det som at sammenligne et æble og et appelsin. Principielt er den ene ikke bedre end den anden. Det afhænger helt af den involverede applikation eller projekt og udviklerens præference.
Resumé:
1. RMI er Java-centreret, mens CORBA ikke er bundet til et enkelt sprog.
2. RMI er lettere at mestre især for Java-programmerere og -udviklere.
3. CORBA tilbyder større portabilitet på grund af dens høje tilpasningsevne til forskellige programmeringssprog.
4. CORBA kan ikke sende nye objekter på tværs af netværk.