O documento apresenta uma introdução ao Windows Communication Foundation (WCF) da Microsoft. Discute a evolução da programação orientada a objetos para a programação orientada a serviços e como o WCF fornece um modelo unificado para construir aplicações distribuídas e interoperáveis. Explica brevemente alguns conceitos-chave do WCF como contratos, endpoints e metadata.
TDC 2010 Floripa-SC SharePoint 2010: Novidades para os desenvolvedores .net
Introdução ao WCF - Windows Communication Foundation
1. Introdução ao WCF Evilázaro Alves Microsoft MVP Connected Systems Developer Br SoluçõesIntegradas http://twitter.com/evilazaro http://www.evilazaro.net http://www.wcfbrasil.ning.com http://www.soasummit.com.br
2. Agenda De ondeviemos ProgramaçãoOrientada a Objetos ProgramaçãoOrientada a Componentes ProgramaçãoOrientada a Serviços Introduçãoao WCF – Windows Communication foundation CenáriosComuns de Utilização do WCF Conceitosbásicos de criação, hospedagem e consumo de Serviços WCF PróximosWebCasts…
4. Serviços, Compomentes e Objetos Orientação a Objetos AplicativoMonolíticoúnico; Dificulta o Reusoemoutrasaplicações; Altamenteacoplado – Associado a linguagemusada; Dependência vertical da classederivada; Orientaçãoa Componentes Permiteinteroperação e intercâmbio de componenetes; Sistema de tipificaçãobinária; Carregadosem tempo de execução; Programaçãoutilizandoumaabstração do serviçochamada “Interface”;
5. Serviços, Componentes e Objetos Orientação a Serviços Interoperabilidade; Baseadoempadrões do marcado; Interaçãobaseadaemmensagenspadronizadas; Estruturadisponíveltestada e aprovada; Maiorconcentraçãonalógica de negócios;
6. O que é WCF Plataforma Microsoft paraaplicações SOA Para a construção de aplicaçõesdistribuídas e interoperáveis; Unificação do desenvolvimento de aplicações ASMX, .NET Remoting e Enterprise Services Modeloúnico e simples de programação; BaixoAcomplamento Não depende de um determinado protocolo, formato de codificação ou ambiente de hospedagem; Tudo é configurável; Roda Microsoft Windows Vista / Windows 7 Microsoft Windows XP Microsoft Windows Server 2003 / Windows Server 2008 Parte do .NET 3.0 , .NET 3.5 e .NET 4.0
7. .NET Remoting ASMX & WSE Interop with other Platforms & WS-* Extensibility Location transparency Attribute- Based Programming Message- Oriented Programming REST / HTTP Programming Enterprise Services System.Messaging HTTP Services Unified Programming Model
8. WCF e SOA Fonte: P&P - Application Architecture Guide 2.0
10. CenáriosComuns de Utilização do WCF Aplicações Intranet O WCF oferece suporte a aplicações clássicas cliente-servidor MensagensTcp/binárias; Autenticaçãointegrada com o Windows; Serviços distribuídos através de limites de processos ou máquinas; Binding – NetTcpBinding; WebServices WCF SuportaWebServicesInteroperáveis Suporte a segurança com SSL/AutenticaçãoUsuário e Senha; HTTP/Text ou HTTP/MTOM; Suporte a protocolos WS*; Binding – BasicHttpBinding e WsHttpBinding; Aplicações SOA Serviços WCF como parte de estratégia SOA; Funcionalidades de NegóciosDistribuídas; Suporte aosconceitos e princípios SOA;
13. A B C A B C A B C WCF EndPoints Client Service Message Address Binding Contract (Where) (How) (What)
14. Contratos [ServiceContract] public interface IMyInterface { [OperationContract] public void MyMethod(); } public class MyService: IMyInterface { public void MyMethod() { ... } } <service> <endpoint name=“MyService” address=“...” binding=“netTcpBinding” contract=“IMyInterface” /> Address + Binding + Contract = Endpoint Definição do contrato Implementação do serviço
15. Arquitetura WCF Aspectos de nível lógico e contratos Aspectos de comportamentos e serviços Aspectos de multi-protocolo e mensagens Aspectos de multi-hosting
16. demo Criando, Hospedando e Consumindo um serviço WCF
17. Requisitos de Clientes e Serviços Serviço Define e implementa um contrato de serviço; É disponibilizadopara o clienteatravés de algum host expondoseusEndPoints; Abre o canal de comunicação; Cliente Armazenainformaçõessobre o contrato do serviço e seusEndPoints; Constroi um canal de comunicaçãopara um EndPointem particular e chamasuasoperações;
19. Contratos e Metadata OsClientes e Serviçosdevemcompartilharcontratos, nãocódigo; Web Service Description Language (WSDL) ContratoInteroperável; Descreve o serviço e seus endpoints; Bindings e Operações; Mensagem e definição de tipos; Politicas; Usadoparagerar proxies e tambémparaconfiguração;
20. A B C A B C A B C WCF EndPoints Client Service Message Address Binding Contract (Where) (How) (What)