1 / 9

Principles of Object-Oriented Software Development

This document provides an in-depth overview of Interface Definition Language (IDL) as it applies to object-oriented software development. It covers key concepts such as interface construction, operations, exceptions handling, and the relationships between interfaces and inheritance. Detailed examples demonstrate how IDL can be implemented across various programming languages, including C, Smalltalk, C++, and Java. The document also explores types and values, demonstrating how to define and manipulate constructed types, such as structs, unions, and sequences.

jaguar
Download Presentation

Principles of Object-Oriented Software Development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Principles of Object-Oriented Software Development Interface Definition Language

  2. Interface Definition Language Introduction Example Types and values Operations and exceptioons Interfaces and inheritance Language bindings

  3. Interface Definition Language IDL • modules -- for clustering • interfaces -- correspond with objects • attributes -- may be readonly • operations -- best effort invocation • exceptions -- for handling failure Language bindings C, Smalltalk, C++, Java

  4. Example module universe { universe.idl interface world { void hello(); void ask(in string x); string tell(); oneway void halt(); }; };

  5. Types and values Basic Types integers, reals, booleans, enum, string, any Constructed Types struct, union, sequence, array, interface Object References interface + operations

  6. Operations and exceptions Operations in, out, inout -- parameter attributes Exceptions exception out_of_range { long count; } interface writer { void position(in long pos) raises(out_of_range); }

  7. Interfaces and inheritance Interfaces and inheritance no overriding, no overloading Multiple (interface) inheritance interface A { }; interface B { }; interface C : A { }; interface D : B, A { };

  8. interface iterator { iterator Object next(); };

  9. Language bindings • types, references, access, ORB and BOA support The Object interface interface Object { PIDL InterfaceDef get_interface(); Object duplicate(); ... }

More Related