1 Programação Orientada aos COMponentes Quartas à Tarde no DEI 12 de Abril de 2000.

Slides:



Advertisements
Apresentações semelhantes
Soluções elegantes para problemas recorrentes
Advertisements

Desenvolvimento de Sistemas Distribuídos Web Services
Sistemas Distribuídos Baseados em Objetos
Noções de Sistemas Operacionais
Raphael Gatti Thomás Bryan
I2S Informática - Sistemas e Serviços, S.A. Sector de I&D
Introdução aos Sistemas Distribuídos
Rational Unified Process
Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163.
Engenharia de Software
Capítulo 1 Introdução.
Web Services Passo a passo Consumo de serviço SOAP em Java 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Métricas para o Processo e o Projecto de SW
Orientação por Objectos > Modelo de Processo OO > Identificação de Classe e Objectos Aula 12.
Unified Modeling Language (UML) - Modelação da Arquitectura -
PLATAFORMA J2EE Luís Filipe Almeida Santos
Laurent Baduel Françoise Baude Denis Caromel 1 Efficient, Flexible, and Typed Group Comunications in Java Por: Adriano Andrade53811 Susana Rijo José
RMI-IIOP.
Java RMI Alcides Calsavara. Objetivos Permitir que um método de uma classe Java em execução em uma máquina virtual JVM chame um método de um objeto (instância.
Orientação a Objetos: Encapsulamento e Classificação
Repositório de Interfaces em CORBA
Comunicação Distribuída
Artur Rauen Luciano Peixoto
Web Services Erika Hmeljevski Estefania Borm Leonardo Malagoli
ODBC.
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
1 Arquitetura CORBA Repositório de Implementação Repositório de Interface cliente programa cliente proxy ORB Core ou invocação dinâmica servidor ORB Core.
Comunicação Entre Objetos Distribuídos
Comunicação Inter-Processos
Curso Sistemas de Informação I Disciplina: Arquitetura de Software
Objetos Distribuídos Padrão CORBA
Programação orientada a objetos com Java
Linguagens de Programação
Aula 8 Orientação à Objetos
Laboratório de Programação de Computadores I
Introdução a EJB 3.0 Eduardo Martins Guerra Instituto Tecnológico de Aeronáutica Curso de Pós-Graduação em Engenharia de Software Programação Distribuída.
Documentação da Neptus Framework
Programação Orientada para Objectos
Mobilidade na Internet
Paulo J. Azevedo Departamento de Informática Universidade do Minho
Classes e objetos P. O. O. Prof. Grace.
Introdução a Programação Orientada a Objetos
Objetos Distribuídos para WEB Prof. Paulo Fernando da Silva FURB – Universidade Regional de Blumenau Pós-Graduação em Desenvolvimento WEB.
Middleware e Sistemas Distribuídos
Frameworks - Introdução
Aluno: Mário Monteiro Orientador: Sérgio Soares 1.
Object Oriented Software Construction (MEYER, Bertrand)
Arquitetura CORBA e Objetos Distribuídos
Tópicos de Sistemas de Informação A
Sistemas Operacionais
Sistemas Distribuídos
Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 07.
Remote Method Invocation RMI
Concorrência e Java RMI
Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento
XIV Jornada de Cursos .NET com C# Antônio Júnior Bruno Inojosa.
1.
TMV Gestão de Redes e de Sistemas Distribuídos ???? Sumário  Arquitectura de Gestão SNMP  Arquitectura de Gestão OSI/TMN  Novas Arquitecturas.
JSP e Servlets ISEP – LP2 Filipe Costa – /2004.
CORBA Apresentação do Padrão CORBA Maurício Maron Mendes Ramiro Pereira de Magalhães
Tecgraf PUC-Rio Setembro de 2013 Introdução ao Openbus.
Integrações de Aplicações Empresariais Prof. Paulo Fernando da Silva UNC – Universidade do Contestado Pós-Graduação em Sistemas de Informação Aplicados.
RMI Objetos Distribuídos Luiz C. D´oleron SCJP
Introdução a Programação Orientada a Objetos
Java – Remote Method Invocation (RMI)
RMI Remote Method Invocation
Versão 1 - julho/2013 Tecgraf PUC-Rio Novembro de 2013 Introdução ao OpenBus.
Sistemas Distribuídos Prof. Marcus Rodrigues
Desenvolvimento WEB II Professora: Kelly de Paula Cunha Apresentação baseada no material didático elaborado pelo Prof. Pasteur Ottoni de Miranda Junior.
Transcrição da apresentação:

1 Programação Orientada aos COMponentes Quartas à Tarde no DEI 12 de Abril de 2000

2 Componentes Agenda Introdução Tutorial Casos Práticos –I2S: Reengenharia via COM –IDT: Engenharia usando COM

3 Programação As Grandes Promessas não reinventar a roda –Reutilização –Interoperabilidade Facilidade de Manutenção –Flexibilidade –Evolução

4 Programação Evolução da Programação Linguagem máquina Programação estruturada POO Unidade estrutural ProgramaSubrotinaObjecto Relação com nível anterior _Unidade de Programa delimitada Subrotinas + memória local persistente DependênciasProcessadorLinguagem prog. (bib. suporte)

5 Programação Problemas Identificados Reutilização –Diferenças linguagens de programação –Diferenças entre versões do mesmo compilador –Controlo de versões Interoperabilidade –Diferenças entre compiladores e linkers –Diferenças entre arquitecturas

6 Programação Problemas Identificados (cont.) Flexibilidade –Incompatibilidades entre bibliotecas –Isolamento das funcionalidades –Controlo de versões –Necessidade de recompilação completa da aplicação Evolução –Incompatibilidades entre bibliotecas –Diferenças entre versões do SO & hardware –Necessidade de recompilação completa da aplicação

7 O Que Se Pretende Programação

8 Componentes Conceitos Genéricos Componente –Unidade de execução que encapsula funcionalidades Interface –Ponto de acesso às funcionalidades do componente

9 Componentes Componentes & Interfaces interface IAritBasica { long Adicionar(long iN1, long iN2); long Subtrarir(long iN1, long iN2); long Multiplicar(long iN1, long iN2); long Dividir(long iN1, long iN2); }; interface IAritAvancada { long Potencia(long base, long expoente); }; coclass CoAritmetica { [default] interface IAritBasica; interface IAritAvancada; };

10 Arquitectura Geral Componentes

11 Componentes Vantagens Reutilização Interoperabilidade –Arquitectura (hardware + S.O.) –Linguagem de programação Actualização de componentes sem recompilação da aplicação ou até mesmo sem reinicialização Controlo de versões Encapsulam detalhes de implementação

12 Componentes Modelos de Componentes COM, DCOM, COM+ CORBA Java / RMI

13 COM Introdução Standard binário –Reutilização em grande escala (sem código fonte) –Suporte multi-linguagem Parte integrante do SO Windows DCOM para plataformas não-Windows Auto-activação! Auto-desactivação! (usando ATL/MFC)

14 COM Introdução (cont.) Localização transparente Múltiplas interfaces por objecto Interfaces standard –Persistência; Notificação; Structured storage; etc. Programação com abordagem procedimental (stateless) Serviços –Transacções; Eventos; invocação Off-line; etc.

15 COM Programação de Aplicações Componente –definir um interface utilizando IDL –atribuir CLSID e identificador programático –gerar código proxy/stub –implementar métodos da interface –Tratar de contagem de instancias Servidor –Implementar "class factory" Registar Classes de componentes Cliente –criar instância do objecto e obter ponteiro de interface –invocar métodos

16 COM Programação COM/ATL (Visual Studio) Criar Componentes usando wizard –definir um interface utilizando wizard –implementar métodos da interface VS Regista automaticamente as Classes Cliente –criar instância do objecto e obter ponteiro de interface –invocar métodos

17 Conclusões Componentes