Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouZaira Barreto Correia Alterado mais de 5 anos atrás
1
André Ricardo (xico) – arss at cin Hugo Calazans – htcrs at cin
CORBA André Ricardo (xico) – arss at cin Hugo Calazans – htcrs at cin
2
Roteiro O que é CORBA? IDL MICO Exemplo Exercício Prático Dúvidas
Servicos servico de nomes IDL MICO Configurando IDEs No Windows (Visual Studio 2005) No linux (Eclipse CDT) Exemplo Exercício Prático Dúvidas
3
O que é CORBA? Common Object Request Broker Architeture
CORBA é uma ESPECIFICAÇÃO de middleware, criado pela OMG(Object Management Group ) MICO é um exemplo de implementação desta especificação Middleware: Usado para resolver problemas de comunicacao entre processos
4
Serviço de Middleware Definição de Bernstein:
Serviço de propósito geral, situado entre plataformas (serviços de baixo nível) e aplicações, sendo caracterizado pelas APIs e pelos protocolos que suporta
5
Serviços de CORBA CORBA especifica um total de 18 servicos
Additional Structuring Mechanisms for the OTS Collection Service Concurrency Service Enhanced View of Time Event Service Externalization Service Naming Service Licensing Service Life Cycle Service Notification Service Persistent State Service Property Service Query Service Relationship Service Security Service Time Service Trading Object Service Transaction Service
6
Serviço de Nomes Definição Para que usar?
Associação biunívoca entre um nome e um serviço Para que usar? Transparência de localização dos serviços
7
IDL Interface Definition Language Baseada em C++
Não possui algoritmos ou variáveis Puramente declarativa Padrões definidos para: Java, COBOL, Smalltalk, Ada, Lisp, Python, IDLscript... possibilita a interoperabilidade entre os diversos sistemas, visto a separação que é definida entre interface (definida de forma bem específica) e execução (código fonte e dados ocultos ao resto do sistema) Puramente declarativa: independente da linguagem de programação utilizada para acessá-la
8
CORBA
9
MICO Uma implementacao LGPL (free software) de CORBA em C++
Serviços implementados Naming service Trading service Event service Relationship service Property service Time service Security service
10
Configurando IDEs www.mico.org No Windows No Linux MICO 2.3.12
Visual Studio 2005 No Linux Eclipse CDT
11
Configurando o MICO no Windows
Faça o download do código fonte do MICO em Descompacte e leia as instruções presentes no arquivo README-WIN32 para compilar o código Edite as variáveis de ambiente, adicionando o diretório win32-bin à variável PATH Como alternativa a todo esse processo, você poderá fazer o download de uma versão já compilada de MICO, através do link:
12
Configurando o Visual Studio
1) File -> New-> Project… 2) Expanda “Visual C++ Projects” 3) Selecione a pasta Win32 4) Selecione Win32 Console Project 5) Especifique um nome para o projeto 6) Clique OK
13
Configurando o Visual Studio
7) Clique em “Application Settings” 8) Cerfifique-se de que a opção “Console Application” está selecionada 9) Marque a opção “Empty project” 10) Clique em “Finish” para criar o projeto
14
Configurando o Visual Studio
Foi criado um “Empty project” 11) Clique com o botão direito em cima do projeto para abrir o menu 12) Selecione o item “Properties” Onde estão as opções “C/C++”? 13) Clique na opção “Cancel”
15
Configurando o Visual Studio
14) Add New Item -> Add 15) Selecione “C++ File” 16) Especifique um nome para o arquivo, como “server.cpp”, por exemplo 17) Clique em “Open”
16
Configurando o Visual Studio
O arquivo “server.cpp” foi criado. 18) Clique em “Project Menu” 19) Selecione “Properties” O diretório “C/C++” está agora habilitado! 20) Expanda-o 21) Em “Additional Included Directories” especifique o caminho completo até o diretório include do MICO Exemplo: D:\mico\include
17
Configurando o Visual Studio
22) Expanda “Linker” 23) Em “Additonal Library Directories”, especifique o caminho completo até as bibliotecas do mico para win Exemplo: D:\mico\win32-bin\lib 24) Selecione Input 25) Digite as strings “mico2312.lib” e “micocoss2312.lib” (sem as aspas e separadas por um espaço) 26) Clique em OK
18
Configurando o MICO no Linux
No linux (Eclipse CDT) Criar um Projeto C/C++ Vocês já fizeram isso milhões de vezes.
19
Configurando as Bibliotecas
20
PRONTO!! Acredite!! Eclipse Configurado!
21
Exemplo: Conta Online Criando a IDL Compilando a IDL
Implementando o Serviço Implementando o Servidor Implementando o Cliente Inicializando o Servidor de nomes
22
Criar IDL interface account{ void deposito (in long valor);
void saque (in long valor); long getSaldo(); }; Colocar isso no arquivo account.idl
23
Compilando a IDL
24
Implementando o Serviço
25
Implementando o Servidor
26
Implementando o Cliente
27
Inicializando o Servidor de nomes
28
Após iniciar o servidor de nomes...
Basta executar o Servidor E depois executar o Cliente
29
Dúvidas Dúvidas?
30
Exercício interface AulaPratica{
void imprimirNoProjetor(in string mensagem); }; Nome do servico “projetor” Endereco do servidor de nomes: “serverAddress:9001”
31
Referências
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.