CORBA
Ukratko, u slucaju da recimo zelis da koristis usluge nekog server objekta, bez obzira gde se on fizicki nalazi, tj potrebna ti je neka vrsta RemoteProcedureCall-a, mozes koristiti CORBU. CORBA nije svojstvo nekog programskog jezika, vec specifikacija koju proizvodjaci mogu ispuniti.Imas dve komponente, CoreObjectModel(COM), koji oznacava osnovne osobine nekog objekta, interfejse, metode... a ObjectRequestBroker(ORB) je komunikacioni protokol putem koga objekti traze usluge nekih drugih objekata bez obzira gde su oni fizicki. Komunikacija se ostvaruje na sledeci nacin: na klijentu pozoves recimo neki metod. Prvo mora postojati veza sa serverom, i da bi napravio konekciju ORB mora znati gde se nalazi server kod. Kada se otvori konekcija, argumenti metode moraju biti prebaceni u binary stream i prebaceni preko mreze. Sa njima idu i ime servera, proces na serveru i objekat na server-sideu na kome treba da se izvrsi metod. Kada se podaci prebace na serveru se oni dekodiraju i izvrse se. E sada zamisli samo da to moras da pravis rucno, dok sa CORBom ovo ti se prakticno svodi na pozivanje metoda na klijent objektu. Ono sto jos izdvaja CORBU od slicnih stvari(recimo RMI u javi) je to sto ona omogucava RemoteProcedureCall izmedju objekata koji su implementirani u bilo kom jeziku(java, c...)
eto...