di: Giuseppe Marchi 30 Aprile 2008
Windows Communication Foundation (da ora in poi WCF) è una delle quattro componenti della versione 3.0 del .NET Framework, che ha il principale scopo di rappresentare i modelli di comunicazione tra sistemi distribuiti.
Data la grande importanza delle architetture distribuite basate sui servizi (SOA), era necessario unificare in un unico componente i metodi fin'ora supportati dalle tecnologie Microsoft per il trasporto di informazioni in ambienti distribuiti. Prima dell'avvento di WCF infatti, ogni sviluppatore doveva utilizzare uno di questi meccanismi per implementare le proprie architetture:
La scelta di uno tra questi era legata alla tipologia di applicazione da dover sviluppare e alle strutture su cui essa si doveva basare.
Windows Comunication Foundation mette assieme tutte queste tecnologie fornendo un modello unificato di programmazione (e relativa API) per la realizzazione di applicazioni interoperabili, il tutto basato su standard condivisi il che permette lo scambio di informazioni anche tra piattaforme tra loro non eterogenee.
In particolare WCF è stato strutturato in modo tale da offrire supporto per tutti gli standard WS-*, cioè per tutte quelle nuove specifiche che sono nate dopo l'avvento dei Web Service, che hanno come fine comune quello di favorire l'interoperabilità tra piattaforme diverse tra loro. Infine, come abbiamo già detto, questo nuovo modello unificato di programmazione è stato basato sulle linee guida delle architetture SOA.
Una delle novità interessanti di WCF sta nel fatto che possiamo creare un semplice servizio ed esporlo tramite IIS come Web Service (utilizzando quindi il protocollo HTTP) oppure, modificando le informazioni di configurazione del servizio stesso, renderlo utilizzabile attraverso il protocollo TCP/IP.
Ogni servizio WCF ha la medesima struttura basata sui concetti di "service class" e "host application".
Figura 1. Servizi e applicazioni
Un servizio è infatti rappresentato da una classe detta appunto classe di servizio, compilata in un'assembly .NET, che per essere eseguita va "ospitata" in applicazioni che fungono da "host" per il servizio stesso. Tali applicazioni possono essere IIS, WAS, servizi Windows o semplici eseguibili (quindi Windows Form, applicazioni WPF o console application).
Guida Windows Azure Code SnippetsLe migliori pratiche per far girare le applicazioni "in the cloud",... |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Amministratore di Reti Windows Server 200820 Febbraio 2012 a Milano |
|
Nessun corso previsto |