{{predmet|Objektově orientované systémy|František Plášil|SWI068}}

Otázky

  • Explain why is the classical client-server contract considered "asymmetric". Is there any remedy to this problem?

**possible explanation

**Subtyping is relation between interfaces, inheritance is relation between implementations.

  • What kind of covariant and contravariant type changes would you recommend in method inheritance?

**takové to A<:A' vs. A:>A' a B<:B' vs. B:>B'

  • What is an implicit specialization of self? Write an example.

  • In CORBA, can a servant incarnate multiple object references at the same time? If yes, write a code fragment illustrating the basic idea of constructing such references on the server side.

    • yes, rootPOA.create_id_uniqueness_policy(IdUniquenessPolicyValue.MULTIPLE_ID); ... _RepId = _defaultServant._all_interfaces(); ... create_reference_with_id(objectId, _RepId);

    • example

  • Explain the Tie technique, and provide an example of its use in an implementation class supporting two IDL interfaces (not in inheritance relation); give at least two reasons of importance.

**Delegate implementation to user-supplied servant [http://java.sun.com/j2se/1.4.2/docs/guide/idl/jidlTieServer.html example.

  • Draw the sequence diagram of unsuccessfully commited transaction (commit resulted into rollback) involving at least 2 resources.

**page 29 at http://nenya.ms.mff.cuni.cz/%7Eplasil/oos/archive2006/lecture05slides/lecture5.pdf

  • Explain the basic idea of the wen:Model_Driven_Architecture and wen:Meta-Object_Facility technologies.

  • Does CORBA Event Service inherently involve buffering? If yes, explain why and how it is typically implemented. Can Event Channels be directly connected (one being a supplier and another being its consumer); if yes provide a program fragment illustrating their connection?

**buffer, event service examples, chained event channels

  • Component-based programming. Explain what ADL is and what makes the basic abstractions which can be specified in ADL.

**ADL is modeling notation to support architecture-based development. **Essential architecture modeling featuers are components, connectors and architectural configurations. http://sunset.usc.edu/%7Eneno/papers/TSE-ADL.pdf