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

1.564 Comentários

  1. Larrydaw Larrydaw

    Особую опасность представляет белая горячка (алкогольный психоз). У пациента возникают галлюцинации, приступы паники, агрессивное поведение, дезориентация во времени и пространстве. Это состояние требует незамедлительного вмешательства врача, так как человек может представлять опасность для себя и окружающих.
    Получить дополнительные сведения – нарколог на дом срочно

  2. Danielwhads Danielwhads

    Наркологическая клиника «Южный МедКонтроль» объединяет современные медицинские технологии, опыт специалистов и уважительное отношение к каждому пациенту. Здесь создаются условия для безопасного и результативного лечения зависимостей любой сложности — от алкогольной до полинаркотической. Центр работает в круглосуточном режиме, предлагая выезд врачей на дом, детоксикацию, кодирование и длительные программы реабилитации. Основная цель специалистов — восстановление физического и психологического равновесия человека, возвращение способности к полноценной жизни без зависимости.
    Углубиться в тему – наркологическая клиника клиника помощь

  3. http://andabogados.es/
    La empresa Andabogados es una agencia especializada con presencia en el tejido empresarial espanol, que ofrece un acompanamiento profesional a quienes buscan resultados, priorizando en la confianza y la transparencia. Conoce mas a traves del enlace.

  4. An interesting discussion is definitely worth comment.
    I do think that you need to publish more about this topic, it
    may not be a taboo matter but usually folks don’t talk about these
    issues. To the next! Best wishes!!

  5. GichardDulge GichardDulge

    Thank you a lot for sharing this with all people you really recognise what you are talking about! Bookmarked. Kindly additionally talk over with my website =). We will have a hyperlink change agreement between us
    บาคาร่า

  6. Sidneytomia Sidneytomia

    Миссия нашей клиники заключается в оказании высококачественной помощи людям, страдающим от зависимостей. Мы стремимся создать безопасное и поддерживающее пространство для лечения, где каждый пациент получает необходимую поддержку и понимание. Наша задача — не только помочь избавиться от зависимости, но и вернуть полноценную жизнедеятельность человека, восстановив его социальные связи и жизненные ориентиры.
    Подробнее можно узнать тут – [url=https://kapelnica-ot-zapoya-irkutsk2.ru/]вызвать капельницу от запоя на дому[/url]

  7. LewisJonus LewisJonus

    Hi there I am so delighted I found your blog page, I really found you by mistake, while I was searching on Askjeeve for something else, Nonetheless I am here now and would just like to say thanks for a marvelous post and a all round entertaining blog (I also love the theme/design), I don’t have time to read through it all at the moment but I have saved it and also included your RSS feeds, so when I have time I will be back to read much more, Please do keep up the awesome jo.

    https://www.google.lv/maps/d/edit?mid=1LeIkCzNWnoHd-Hr6boUAo2q31wakYRk

Deixe um comentário

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