Objektově orientované systémy

Z ωικι.matfyz.cz
Přejít na: navigace, hledání
Objektově orientované systémy
Kód předmětu: NSWI068
Přednáší: František Plášil

Otázky[editovat | editovat zdroj]

  • Explain why is the classical client-server contract considered "asymmetric". Is there any remedy to this problem?
  • Explain the difference between inheritance and subtyping. [1]
    • 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 [2], example.
  • Draw the sequence diagram of unsuccessfully commited transaction (commit resulted into rollback) involving at least 2 resources.
  • Explain the basic idea of the MDA and MOF 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?
  • 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. [4]
  • Explain the fragile base class problem and inheritance anomaly.