ий набір методів і атрибутів. Кожному інтерфейсу присвоюється ім'я, унікальне в межах однієї розподіленої системи. На відміну від СОМ в CORBA немає бінарного стандарту інтерфейсів. Замість цього існує стандартна мова описів IDL. Так вже вийшло, що мови з назвою IDL існують в трьох різних технологіях - OSF/DCE, Microsoft/COM і OMG/CORBA. Ці мови багато в чому схожі, оскільки призначені для одного і того ж, але OMG/IDL дещо відрізняється від своїх В«однофамільцівВ». p align="justify"> За його основу був узятий мова C + +, тому нам студентам, знайомим з C + +, при роботі з IDL буде достатньо зручно користуватися даною технологією.
Сервант
Щоб використовувати CORBA-об'єкт у конкретній програмі недостатньо створити його або навіть встановити з ним зв'язок. Функціональність CORBA-об'єкта недоступна для клієнта до тих пір, поки в програмі не створений об'єкт, який дозволяє отримати доступ до методів, оголошеним у IDL-інтерфейсі. Цей об'єкт (реалізований на C + +, Java, C, Cobol, Ada, Smalltalk або деяких інших мовах) і називається В«сервантомВ». p align="justify"> Залежно від використовуваної мови програмування, серванти реалізуються по-різному. Для об'єктно-орієнтованих мов сервант є екземпляром (instance) деякого класу, методи якого реалізують потрібну функціональність. Такий клас часто називають В«класом реалізаціїВ». p align="justify"> За час існування CORBA-об'єкта з ним може бути порівнювати безліч різних реалізацій сервантів (але не більше одного за раз). Більше того, вони можуть міститися в адресному просторі різних додатків. Ці програми можуть бути навіть запущені на різних комп'ютерах. p align="justify"> Можна сказати, що сервант є В«інкарнацієюВ» CORBA-об'єкта. Зв'язок між сервантами і CORBA-об'єктами є хоч і строго формалізованої, але дуже гнучкою. Сервант може бути створений раніше чи пізніше CORBA-об'єкта; один сервант може В«обслуговуватиВ» як один, так і декілька CORBA-об'єктів. Явне розділення циклів життя CORBA-об'єктів і їх сервантів (а саме серванти споживають реальні ресурси) - один із стовпів, на яких базується дуже висока масштабованість CORBA-додатків. p align="justify"> Об'єктна посилання
Єдина складність, що виникла у мене з розумінням сенсу терміну В«об'єктна посиланняВ», це те, що він використовується у двох різних сенсах.
У розумінні щодо даної технології, об'єктна посилання являє собою закодовану інформацію про CORBA-об'єкт. Вона включає ім'я хоста, порту TCP/IP, так само унікальний ідентифікатор даного CORBA-об'єкта і безліч іншої інформації, що дозволяє клієнту встановити зв'язок з серверним об'єктом через кордони мов програмування, операційних систем і апаратних платформ. Операції з об'єктної посиланням неможливі для клієнта, за винятком того, що клієнт може перетворити її в рядок і записати у файл або базу даних...