Tecnologias Middleware na implementação de sistemas ... - Fatec
Tecnologias Middleware na implementação de sistemas ... - Fatec
Tecnologias Middleware na implementação de sistemas ... - Fatec
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
31sua distribuição em re<strong>de</strong>s <strong>de</strong> alta latência, provêm sua integração em <strong>na</strong>vegadores webque po<strong>de</strong>m ser incluídos em aplicações ou pági<strong>na</strong>s web;‣ Uma forma po<strong>de</strong>rosa para aplicativos interagirem com o sistema operacio<strong>na</strong>l;‣ Um suporte para criação <strong>de</strong> documentos compostos, configuração <strong>de</strong> controles,transferência <strong>de</strong> dados, scripting e outras interações entre aplicações;‣ Expansão para acomodar novos protocolos como a interface <strong>de</strong> acesso para banco <strong>de</strong>dados OLEDB (OLEDB é uma especificação aberta da Microsoft, <strong>de</strong>sig<strong>na</strong>da paraacessar todos os tipos <strong>de</strong> dados).O padrão <strong>de</strong> interoperabilida<strong>de</strong> binária do COM permite que os componentes sejamdistribuídos sem código fonte e integrados no ambiente dos clientes. O COM é um protocolo quepermite a conexão entre um objeto cliente e outro servidor e <strong>de</strong>pois sai <strong>de</strong> ce<strong>na</strong>. Após a conexãoser realizada, os objetos po<strong>de</strong>m se comunicar através <strong>de</strong> um mecanismo chamado <strong>de</strong> interface.Uma interface COM <strong>de</strong>fine o comportamento ou as capacida<strong>de</strong>s <strong>de</strong> um componente <strong>de</strong> softwarecom um conjunto <strong>de</strong> métodos e proprieda<strong>de</strong>s – é um contrato que garante a consistênciasemântica do objeto que a suporta, sendo que cada objeto po<strong>de</strong> suportar diversas interfaces.As interfaces são <strong>de</strong>finidas com Microsoft’s Interface Definition Language (MIDL), umaextensão da linguagem DCE RPC IDL, especificado pela Open Software Foundation (OSF). Ocompilador MIDL gera os seguintes códigos:‣ Proxy que correspon<strong>de</strong> ao lado do cliente da API para os objetos que suportam ainterface, sendo responsável pela linearização dos parâmetros (marshaling);‣ Stub para <strong>de</strong>codificar as requisições recebidas dos clientes e disparar o objetoapropriado no servidor. Estes dois códigos garantem a compatibilida<strong>de</strong> binária entreas diferentes linguagens utilizadas ou, no caso do DCOM, diferentes <strong>sistemas</strong>operacio<strong>na</strong>is, máqui<strong>na</strong>s e protocolos <strong>de</strong> re<strong>de</strong>.Para elimi<strong>na</strong>r qualquer ambigüida<strong>de</strong> e colisão <strong>de</strong> nomes, cada interface recebe umaGlobally Unique I<strong>de</strong>ntifier (GUID). Esta i<strong>de</strong>ntificação é <strong>de</strong>nomi<strong>na</strong>da Interface I<strong>de</strong>ntifier (IID) e ésubstituída a cada nova versão da interface. Um objeto po<strong>de</strong> suportar novas interfaces ou novasversões da mesma, cada uma com sua própria IID. Desta forma, clientes antigos po<strong>de</strong>m invocar