Informações Principais
     Resumo
     Abstract
     Introdução
     Conclusão
     Download
  
  
  
 
Introdução
 
 
Acadêmico(a): Egard Charles Ullrich
Título: Comparativo da Tecnologia DCOM em Diversos Ambientes de Desenvolimento
 
Introdução:
Segundo Mainetti (1997), a primeira influência da orientação a objetos (OO) ocorreu através das linguagens de programação. Durante os anos 80, praticamente todas as linguagens passaram a embutir os conceitos de OO. Linguagens como BASIC, Pascal, C, COBOL e LISP transformaram-se em linguagens como: Object Pascal, C++, Object COBOL e CLOS (Common Lisp Object System). Até mesmo as linguagens proprietárias e baseadas em scripts, de ferramentas gráficas de prototipação hoje são consideradas orientadas a objetos. Há muito tempo, vários autores já vêm fazendo previsões sobre a influência da orientação a objetos nas várias áreas da computação. Se forem observados os acontecimentos destas áreas nos últimos anos, verifica-se que todas as previsões transformaram-se em realidade. Mainetti (1997) também descreve que hoje, mesmo que um profissional da área de desenvolvimento de software queira desenvolver um novo sistema sem usar orientação a objetos, vai encontrar muitas dificuldades, pois praticamente todas as ferramentas de ponta atualmente usadas no processo de desenvolvimento de software são otimizadas para trabalhar usando os conceitos de orientação a objetos. O desenvolvimento de software orientado a objetos tem um grande potencial para redução do tempo e do custo de desenvolvimento (reutilização), além de obter uma alta qualidade nos sistemas de software desenvolvidos por novos e não tão experientes engenheiros de softwares (Schmidt, 2000). De acordo com estas necessidades e tendências, surgiram os chamados objetos distribuídos com o objetivo de cada vez mais aumentar a interoperabilidade e facilitar a comunicação entre sistemas, desde um mesmo computador, até a comunicação entre sistemas em pontos diferentes via internet, conforme relata MICROSOFT (2001). Usar objetos distribuídos (OD) é basicamente usar a tecnologia de orientação a objetos em um ambiente distribuído. Como estas duas tecnologias já estão se transformando em realidade atual na grande maioria das empresas, trata-se de uma evolução natural. Os objetos distribuídos começaram sua trajetória através do middleware (a parte do software responsável pela intercomunicação entre os vários componentes distribuídos em uma rede), mas hoje estão invadindo todas as áreas, inclusive a Internet (Mainetti, 1997). Além disso, esses objetos distribuídos possuem as mesmas características principais dos objetos das linguagens de programação: encapsulamento, polimorfismo e herança, tendo dessa forma, as mesmas principais vantagens: fácil reusabilidade, manutenção e depuração (Capeletto, 1999). Szyperski (1998) diz que para o desenvolvimento de softwares complexos que envolvem assuntos como projeto e implementação de objetos distribuídos, uma arquitetura se torna necessária. O mesmo ocorre no desenvolvimento de softwares a partir de componentes (component system architecture). Hoje existem várias arquiteturas para desenvolvimento e interoperabilidade de componentes, dentre as quais se destacam o Common Object Request Broker Architecture (CORBA) e o Component Object Model (COM). Sobre esta última é que será dado ênfase neste trabalho. Há muitas razões pelas quais duas ou mais aplicações podem interagir, como trocar dados ou para uma controlar a outra. Contudo, COM não define o propósito para que as aplicações se comuniquem. COM apenas provê uma via padrão para duas ou mais aplicações interagirem, não se importando com o propósito dessa interação. Object Linking and Embedding (OLE) e ActiveX são exemplos de duas especificações industriais que definem características específicas pelas quais as aplicações devem interagir. OLE é uma especificação que descreve como objetos COM podem ser usados para criar e manipular documentos compostos. ActiveX é uma especificação que descreve como objetos COM podem ser usados na Internet (Redmond III, 1997). Já o DCOM (Microsoft Distributed COM) é uma extensão do COM para suportar comunicação entre objetos em diferentes computadores. Esta tecnologia, por vir da Microsoft, depende da plataforma que, no caso, é o Windows. Mesmo no Windows a tecnologia COM é suportada por diversas linguagens e ambientes tais como Microsoft Visual C++ 6.0, Borland Delphi 6, Microsoft Visual J++ 6.0 e Microsoft Visual Basic 6.0 entre outros. Entretanto, para cada linguagem observa-se diferentes características de uso destes objetos. Desta forma, neste trabalho pretende-se avaliar a tecnologia COM e suas formas de implementação em diferentes linguagens (C, Object Pascal, Java e Visual Basic). Nesta avaliação pretende-se verificar principalmente as ferramentas disponíveis para cada linguagem e a interoperabilidade dos objetos a serem desenvolvidos. Para esta avaliação foi implementado um sistema de comunicação pessoal, estilo chat onde os usuários poderão enviar e receber mensagens, baseado em componentes e em sistemas distribuídos permitindo automatizar fluxos de informações digitadas pelo usuário. Existe um servidor de informações e vários clientes desenvolvidos em diversas linguagens de programação compatíveis com a tecnologia de orientação a objetos e a arquitetura COM/DCOM, com o objetivo de alcançar uma perfeita interoperabilidade de todos os objetos em questão, trabalhando juntos à medida que seus serviços se façam necessários. Foi utilizada a Unified Modeling Language (UML) para modelagem do sistema.