Clemens, Clemens, Clemens! Ancora una volta, Clemens Vasters dimostra di avere competenza, idee chiare e la capacità di comunicare entrambe. In una sessione incentrata sulla realizzazione di sistemi "Loosely Coupled", si afferma che il futuro è nelle SOA, vero terreno di conquista per i Web Services. Filo conduttore della sessione (finalmente una "400") è la realizzazione di un Web Service partendo dal contratto che lo descrive: questo approccio, che gli architetti apprezzeranno sicuramente, è forse meno naturale di quello "proposto" da Visual Studio .NET ma rivela grandi vantaggi quando l'interoperabilità è un must. Il tempo scorre, e lo speaker incalza: l'encoding RPC è tabù, (come 
WS-I ripete ormai da tempo), la bacchetta magica si chiama encoding 
document/literal e il suo verbo è professato dall'attributo 
SoapDocumentService. Un po' di "smanettamento" con 
disco.exe e 
wsdl.exe (ma nulla di realmente nuovo) e il "bruco" diventa "farfalla", ossia un Web Service pronto per l'uso. Controllo completo sulla serializzazione (ricordando che document/literal mette al bando gli attributi 
SoapXXX) e uso cosciente della tipizzazione, magari anche rinunciandovi: "XML as a string" e 
base64 possono a volte risultare una comoda soluzione (usata anche dai 
Web Services di UGIdotNET). In assenza di tipizzazione, diventa evidente il "gancio" con la sessione che Clemens ha erogato ieri parlando di 
Soap Extensions: tramite esse è infatti possibile mantenere il controllo degli stream scambiati tra server e consumer. Versioning, qualche demo (io _adoro_ il 
SOAP Trace Utility di Microsoft: lo sapevate già?), aneddoti vari e sorpresa shock finale... Tra gli approcci "WSDL-first" e "code-first", Clemens preferisce quest'ultimo perchè considera WSDL sovracomplesso. L'avreste mai detto?