How Java/RMI compares with COM/DCOM and CORBA ©2001 by Sachin Sood

Slides:



Advertisements
Similar presentations
COM vs. CORBA.
Advertisements

What iS RMI? Remote Method Invocation. It is an approach where a method on a remote machine invokes another method on another machine to perform some computation.
Remote Method Invocation
Remote Object Invocation Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
Middleware Fatemeh Hendijanifard 1 آزمايشگاه سيستم هاي هوشمند (
Netprog CORBA Intro1 CORBA Common Object Request Broker Architecture Based partially on Notes by D. Hollinger and Java Network Programming and Distributed.
A brief look at CORBA. What is CORBA Common Object Request Broker Architecture developed by OMG Combine benefits of OO and distributed computing Distributed.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
CSE331: Introduction to Networks and Security Lecture 11 Fall 2002.
Introduction to Java Programming
II. Middleware for Distributed Systems
Practical Issues of RPCCS-4513, D-Term Remote Procedure Call Practical Issues CS-4513 Distributed Computing Systems (Slides include materials from.
For more Lectures and Notes Visit
Data Abstraction and Object- Oriented Programming CS351 – Programming Paradigms.
Session-02. Objective In this session you will learn : What is Class Loader ? What is Byte Code Verifier? JIT & JAVA API Features of Java Java Environment.
Peter Juszczyk CS 492/493 - ISGS. // Is this C# or Java? class TestApp { static void Main() { int counter = 0; counter++; } } The answer is C# - In C#
JAVA v.s. C++ Programming Language Comparison By LI LU SAMMY CHU By LI LU SAMMY CHU.
Chapter 2 Architectural Models. Keywords Middleware Interface vs. implementation Client-server models OOP.
Principles of Computer Programming (using Java) Review Haidong Xue Summer 2011, at GSU.
1 Remote Procedure Calls (RPC) and Distributed Objects G53ACC Chris Greenhalgh.
MT311 Java Application Development and Programming Languages Li Tak Sing( 李德成 )
+ A Short Java RMI Tutorial Usman Saleem
Chapter 1: Introducing JAVA. 2 Introduction Why JAVA Applets and Server Side Programming Very rich GUI libraries Portability (machine independence) A.
1 Java RMI G53ACC Chris Greenhalgh. 2 Contents l Java RMI overview l A Java RMI example –Overview –Walk-through l Implementation notes –Argument passing.
SE-02 COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require.
Distributed Objects and Middleware. Sockets and Ports Source: G. Coulouris et al., Distributed Systems: Concepts and Design.
PolyORB Versatile Middleware for Interoperable Critical Systems PolyORB Versatile Middleware for Interoperable Critical Systems Presentation cover page.
CS 501: Software Engineering Fall 1999 Lecture 12 System Architecture III Distributed Objects.
Chapter 1: Introducing JAVA. 2 Introduction Why JAVA Applets and web applications Very rich GUI libraries Portability (machine independence) A real Object.
Java: An Overview John R Durrett Texas Tech University.
3C-1 Purity Typing Language semantics Inheritance model  Single vs. Multiple inheritance  Common root Modular mechanisms Generics Object Oriented Languages.
CSE119 Component Based Technology. UNIT – IV Java and CORBA Interface Definition Language Object Request Broker System Object Model Portable Object Adapter.
By: Cheryl Mok & Sarah Tan. Java is partially interpreted. 1. Programmer writes a program in textual form 2. Runs the compiler, which converts the textual.
CS551 - Lecture 10 1 CS551 Object Oriented Middleware (II) (Chap. 4 of EDO) Yugi Lee STB #555 (816)
Topic 5: CORBA RMI Dr. Ayman Srour
Middleware Department of Computer Science Southern Illinois University Edwardsville Spring, 2016 Dr. Hiroshi Fujinoki Middleware/001.
Learning Plan 6 Java Programming Intro to Object Oriented Programming.
Object Interaction: RMI and RPC 1. Overview 2 Distributed applications programming - distributed objects model - RMI, invocation semantics - RPC Products.
1 Distributed Systems Architectures Distributed object architectures Reference: ©Ian Sommerville 2000 Software Engineering, 6th edition.
Object Interaction: RMI and RPC 1. Overview 2 Distributed applications programming - distributed objects model - RMI, invocation semantics - RPC Products.
Java Distributed Computing
Java Distributed Object System
Distributed Computing
03 – Remote invoaction Request-reply RPC RMI Coulouris 5
Sections Basic Concepts of Programming
Chapter 1 Introduction to Computers, Programs, and Java
Remote Method Invocation
The Java Programming Language
CORBA Alegria Baquero.
What is RMI? Remote Method Invocation
Programming Language Concepts (CIS 635)
Distributed Systems Course Topics in distributed objects
Technology Guide 2 Software.
Getting Started ARCS Lab..
Advanced Programming Fall 2017.
Interpreter Style Examples
DISTRIBUTED COMPUTING
CORBA Alegria Baquero.
Inventory of Distributed Computing Concepts
Component--based development
Java Programming Course
(Computer fundamental Lab)
Java History, Editions, Version Features
COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require understanding.
Java Remote Method Invocation
Middleware and ORB CS 314 Operating Systems
Middleware and ORB CS 314 Operating Systems
Copyright 1999 B.Ramamurthy
Abstract Types Defined as Classes of Variables
Presentation transcript:

How Java/RMI compares with COM/DCOM and CORBA ©2001 by Sachin Sood Is it your cup of coffee? How Java/RMI compares with COM/DCOM and CORBA ©2001 by Sachin Sood

Contents Comparisons Pros/Cons of Java/RMI Which is the best?

Object Oriented Middleware System Comparisons CORBA COM/DCOM JAVA/RMI Meta Object Model: Uses IDL Uses MIDL No IDL used Stub Generation: IDL generates C/S stubs MIDL generates C/S stubs Compiler (rmic) generates C/S stubs Location Transparency: Completely achieved Not fully achieved

Object Oriented Middleware System Comparisons CORBA COM/DCOM JAVA/RMI Access Transparency: Completely achieved Not fully achieved Language Independency: Achieved (IDL) Achieved (MIDL) Not achieved Multiple Inheritance Class: Yes No Multiple Interface Class:

Object Oriented Middleware System Comparisons CORBA COM/DCOM JAVA/RMI At-most-once semantics: Yes Polymorphism: Restricted (statically typed) Attributes: Treated as operations (implicit) Treated as operations (explicit)

Object Oriented Middleware System Comparisons CORBA COM/DCOM JAVA/RMI Failures: Standard exceptions and support type exception as part of IDL Defines HResult (32-bit integer) Standard exceptions and support type specific exception Binary Encapsulation: Yes Binary Compatibility:

Object Oriented Middleware System Comparisons CORBA COM/DCOM JAVA/RMI Object References: Supported Not supported Supported through rmic Passing executable code: Not allowed. Not allowed Allowed Inheritance: Yes. Root is Object Yes. Root is IUnknown Yes. Root is Remote.

Pros/Cons of Java/RMI Pros: Available since JDK 1.02 Hides the need to learn IDL from the user Portable across many platforms Can introduce new code to foreign JVMs

Pros/Cons of Java/RMI Cons: Works only with Java platform Limitations on functionality Security threats with remote code execution

So which is the best and which is the worst? GOD KNOWS!!!