Do que trata o artigo

Neste artigo abordaremos uma visão geral do Windows Communication Foundation, mostrando os principais conceitos. Em seguida, utilizaremos esses conceitos para criação de uma aplicação prática.

Para que serve

O Windows Communication Foundation é uma tecnologia que facilita a integração e comunicação entre sistemas ou partes dele, que poderá ser feita por vários protocolos como HTTP e TCP.

Em que situação o tema é útil

Com o Windows Communication Foundation podemos criar facilmente aplicações SOA (Service Oriented Architecture), consultar dados a partir de aplicações como Silverlight, ou ainda na construção de soluções em camadas.

Resumo do DevMan

O .NET Framework 3.0 apresentou novos pilares na plataforma .NET, um deles é o Windows Communication Foundation. Neste artigo conheceremos seus fundamentos, como o modelo de programação, Endpoints, Contratos, Serviços, Cliente e Proxy, aprenderemos o que cada item representa na arquitetura e em seguida colocaremos em prática, criando uma aplicação em camadas.

Em novembro de 2006 a Microsoft lançou o .NET Framework 3.0 e quatro plataformas de tecnologias (Figura 1), umas delas conhecida inicialmente como “Indigo”, que futuramente veio a se tornar o que hoje conhecemos por Windows Communication Foundation – WCF.

Figura 1. Os pilares do .NET Framework 3.0

Alguns anos atrás ou até o momento, quando falamos de aplicações distribuídas, precisamos de algumas tecnologias como Sockets, MSMQ – Message Queuing, Web Services, .NET Remoting entre outras. Como cada uma apresenta características e implementações distintas, o desenvolvedor precisava conhecer diferentes fundamentos e técnicas para programar a comunicação entre aplicações e serviços.

Nota do DevMan

Sockets é uma tecnologia que faz a comunicação utilizando o protocolo IP, sendo possível comunicar com aplicativos e/ou equipamentos de rede que estão expostos através de uma porta. Já um Web Service permite fazer a comunicação utilizando o protocolo HTTP, a transferência dos dados normalmente é feita com arquivo XML, mas pode ser arquivo JSON por exemplo. JSON - JavaScript Object Notation - é um padrão para escrever estrutura de dados em Javascript, ele pode ser uma alternativa para documentos XML, se tratando em AJAX. O JSON se baseia na notação “Chave: Valor”.

Pensando nisso a Microsoft criou o WCF, para facilitar essa interoperabilidade e aumentar a produtividade com tecnologias atuais. Assim, o desenvolvedor não precisa conhecer uma infinidade de implementações para um único propósito (comunicação), pois o WCF unifica todas elas.

O WCF funciona com a comunicação entre serviços e esses serviços fazem a troca de mensagens entre cliente e o servidor, podendo ter mais de uma direção, ou seja, tanto o cliente pode mandar mensagens para o serviço como o serviço pode mandar mensagens para o cliente.

Essa comunicação é feita através de endpoints. Tanto o serviço como o cliente precisam de um endpoint. O serviço poderá ter mais de um endpoint, por exemplo, um sendo consumido por uma empresa externa e outro sendo consumido dentro da empresa (Figura 2).

Figura 2. Comunicação entre o cliente e serviço

EndPoint - Address, Binding e Contrato

O endpoint é composto por três partes, sendo um endereço, uma ligação (binding) e um contrato. Essas partes são conhecidas como “ABC Windows Communication Foundation”. Na Figura 3 temos o cliente fazendo a troca de mensagem com o serviço através de endpoint.

Figura 3. Fazendo a troca de mensagem por endpoints

O endereço conhecido como a parte A, de Address, indica onde está localizado o serviço, seu caminho, sendo formado pela seguinte estrutura: scheme://host:[porta]/path.

O Binding é representando pela letra B, é a ligação do serviço, indica como será feita a comunicação do endpoint, podendo por exemplo, ser um protocolo HTTP ou TCP. O WCF disponibiliza vários bindings, conforme Tabela 1.

...

Binding

ModeloTransporte

Segurança

Quer ler esse conteúdo completo? Tenha acesso completo