Before we cover CORBA in detail, let's compare it technically with RMI. The basic trade-offs between the technologies are:

- CORBA lets you mix programming languages. In other words, you can write your client programs and the distributed objects in any CORBA supported programming language, including Java, C++, C and so forth. RMI, of course, only supports Java, both on the client and the server.

- CORBA is geared toward larger, more scalable systems, where you might have thousands of objects. CORBA is more complex to program and deploy than RMI, but lets you develop enterprise-level systems, where you need support for transactions, security and so forth. The CORBA Naming Service is also more powerful and flexible than the RMI Naming Registry.

So which is better? It really depends on your intended application. Hopefully, you will be able to make a more informed choice after taking this course.