Ir ao conteúdo

Um exemplo da utilização de CORBA

Olá,

CORBA (Common Object Request Broker Architecture) é um padrão definido pelo grupo OMG (Object Management Group), este permite a interação entre Objetos Distribuídos, em diferentes linguagens e sistemas. Ele também proporciona total transparência na comunicação entre os objetos distribuídos. A localização de objetos é feito via suas referências, que são resolvidas pelo ORB. A linguagem IDL (Interface Definition Language) é a tecnologia utilizada para descrever as interfaces dos objetos. Esta é uma linguagem puramente declarativa. Ela possui seus próprios tipos de dados, que são mapeados para tipos de dados nas linguagens suportadas. Existe o Compilador IDL que gera os códigos responsáveis pela comunicação entre objetos, mapeia os tipos de dados, se encarrega de fazer a serialização dos dados.

Mas na prática como funciona? Bom, possuimos as definições em um arquivo .idl, neste caso o arquivo Bank-idl (lembre-se de renomea-lo para bank.idl).

Acessando esse arquivo vocês verão diversas definições como:

Definição do modulo

module banco {

Definição do tipo valor

typedef double valor;

Definição da estrutura de dados Transação

struct transacao {
unsigned long data; // Formato: ddmmyyyy
string<12> descricao;
valor quantia;
};

Definição da interface, seus métodos, variaveis, excessões

interface auto_atendimento {
readonly attribute string boas_vindas;
valor saldo ( in conta c )
raises ( conta_inval );
void extrato ( in conta c,
out transacoes t, out valor saldo )
raises ( conta_inval );
void transferencia ( in conta origem,
in conta destino, in valor v )
raises ( conta_inval, saldo_insuf );
void investimento ( in conta c,
in aplicacao apl, in valor v )
raises ( conta_inval, saldo_insuf );
};

Com este arquivo, você pode criar as diversas interfaces com diferentes compiladores para diferentes linguagens. Para gerar as interfaces utilize

idlj -fall bank.idl

O mesmo irá gerar diversos arquivos dentro da pasta banco, com arquivos .java, com interfaces, métodos e exceções. Os mesmos devem ser ainda implementados para funcionar como você desejar.

Um exemplo de implementação de um Servidor de Banco e um Cliente em Java, utilizando CORBA com IDL

Matheus

PS: Isto foi apenas uma breve introdução. O CORBA utiliza diversas outras definições como o OMA e outras.

Publicado emjava

2.511 Comentários

  1. JamesSag JamesSag

    Главная разница не в том, что один формат «лучше», а другой «хуже». Клиника чаще предлагает гибкое лечение, индивидуальный подход, круглосуточное наблюдение, вызов нарколога на дому, комфортные палаты, анонимную запись, консультацию для близких, восстановительные мероприятия, кодирование, терапию и комплексное лечение зависимости. Диспансер работает по правилам учреждения, где прием может зависеть от графика, адреса, очереди, оснований обращения и необходимости оформить медицинские данные. Поэтому выбор зависит от состояния человека, тяжести заболевания, мотивации, финансовой возможности, поддержки семьи, риска срыва, развития осложнений и цели обращения.
    Выяснить больше – вывод из запоя на дому в анапе

  2. RileyFrady RileyFrady

    Помощь оказывают врачи с практикой в наркологии, психиатрии и восстановительной терапии.
    Получить дополнительную информацию – vyvod iz zapoya dzerzhinskij

  3. Abnormal this put up is totaly unrelated to what I was searching google for, but it surely used to be listed at the first page. I suppose your doing one thing proper if Google likes you adequate to place you at the first page of a non similar search.

  4. Люди помогите советом Брат снова сорвался Жена в истерике В больницу тащить страшно Короче, только это реально спасло — вывод из запоя спб цены доступные Поставили капельницу с детоксикационным раствором В общем, вся инфа по ссылке — капельница на дом спб от алкоголя https://lechenie.vyvod-iz-zapoya-na-domu-sankt-peterburg.ru Звоните прямо сейчас Перешлите тем кто в такой же ситуации

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *