settembre 2006 - Posts
Dopo il rilascio della RC1 di .NET 3.0, avvenuta ai primi di settembre, Microsoft ha rilasciato pochi giorni fa una nuova build CTP, una delle ultime (pare la penultima) prima del rilascio della RTM.
Il materiale del corso della prossima settimana è praticamente pronto e basato sulla RC1, però cercheremo di sottolineare anche le eventuali novità presenti in questa ultima build.
Qui c'è invece la documentazione aggiornata.
La fine dell’estate apre tradizionalmente la nuova stagione di eventi, anche per DevLeap.
Il nostro evento centrale sarà DevCon 2007, la prossima primavera. Nel frattempo abbiamo organizzato eventi più mirati in termini di argomenti.
Il primo è Visual Studio Team System Day che, grazie anche alla sponsorizzazione di Microsoft Italia, si terrà in forma gratuita il 27 settembre 2006.
La settimana successiva, dal 2 ottobre comincia un corso di 3 giorni su .NET 3.0 in cui cercheremo di “travasare” l’esperienza accumulata in progetti reali sulla nuova piattaforma.
A fine ottobre avremo 3 eventi da un giorno, contrassegnati dal marchio DevLeap OneDay: Architettura applicazioni .NET 3.0 e Accesso ai dati ottimizzato con .NET 2.0, con repliche a Milano e Roma.
A dicembre ci sarà un evento su BizTalk Server e in primavera sarà la volta di DevCon 2007, per noi l’appuntamento più importante per durata e copertura di argomenti.
DevCon 2007 sarà all'insegna di approfondimenti su .NET in versione 2.0 che resta la piattaforma base delle nostre applicazioni e le novità delle librerie .NET 3.0: come sapete, .NET 3.0 non porta con sé una nuova versione di linguaggi e compilatori, bensì framework applicativi che completano la piattaforma 2.0 per User Interface (WPF), comunicazione fra layer e servizi (WCF), gestione di Workflow (WF) e autenticazione basata su digital identities (WCS). Ovviamente non mancheranno dei richiami a prodotti di futura uscita, per continuare a guardare avanti.
Crediamo da sempre nello sviluppo di software scritto bene, non siamo mai scesi a compromessi proprio per questo motivo. I DevCon OneDay e la DevCon 2007 sono e saranno la testimonianza che un software progettato bene richiede meno sforzo nella scrittura, nella manutenzione e nell'aggiornamento a nuove versioni dei framework. Estates Management, l'applicazione case-study che proponiamo e manteniamo ormai da anni, sarà la base di tutti questi eventi.
http://eventi.devleap.com è il puntatore ai nostri eventi presenti e futuri: come sempre, poca grafica e molta sostanza.
Bridge the Gap
Luca, Marco, Paolo e Roberto
Questa sera, provando il nuovo comportamento nella RC1 di .NET 3.0, nel caso in cui si voglia fornire un file WSDL personalizzato credo di essere incappato in un piccolo-bug. Infatti il tag <serviceMetadata/> che è possibile assegnare ad un serviceBehavior prevede l'attributo externalMetadataLocation, molto interessante per un approccio Contract First !
L'idea dell'attributo è proprio quella che si evince dal nome: fornire un percorso alternativo per il WSDL del servizio, così da fornirne una versione personalizzata.
Ora, nel caso in cui si configuri il parametro con una URI assoluta (tipo http://..../qualcosa.wsdl) tutto funziona correttamente. Se invece si fornisce un percorso relativo (tipo service.wsdl e basta), teoricamente previsto dalla documentazione, ecco che il nome del file viene concatenato alla URL del servizio, di fatto generando poi un errore in fase di request e di generazione della Service Reference.
Se avete altri riscontri o workaround .... battete un colpo.
Per chi sta affrontando l'installazione e/o l'upgrade di OSS2007 e/o WSS3 B2TR
qui ci sono alcuni tips & tricks e link a documentazione utile dal team del prodotto.
In quest'ultimo periodo io e RoB stiamo lavorando ad un progetto di un cliente, nel quale abbiamo utilizzato WF per definire i processi di business. Lo strato di logica di BIZ del nostro applicativo si appoggia quindi a WF per svolgere alcune delle operazioni che richiedono un disegno e un ragionamento da "esperto del dominio" piuttosto che da programmatore.
Dal momento che la classe WorkflowRuntime di WF, tra i suoi vari metodi, prevede la possibilità di creare una WorkflowInstance a partire dal sorgente XML del flusso e dalle sue rules, sempre in formato XML, abbiamo pensato bene di prevedere all'interno della struttura dati un campo XML, in SQL 2005, e di caricare poi da questo lo XOML che descrive i flussi e le regole.
Potrebbe sembrare una perversione :-), ma in questo modo i nostri clienti sono in grado di ridefinire autonomamente i flussi, usando anche le nostre Activities custom e non solo quelle di base, per poi salvarne il risultato nel DB. Lo strato di business andrà ad invocare i flussi all'occorrenza, "scoprendo" dinamicamente ciò che il cliente ha configurato.
Questo comporta ovviamente un overhead, perché il motore di WF deve creare just-in-time la classe Workflow dallo XOML, ma i vantaggi trovo che siano impagabili in termini di versatilità ed apertura del progetto. Un altro potenziale problema è legato al fatto che il cliente potrebbe scrivere sciocchezze nel workflow, addirittura rendendolo non corretto dal punto di vista sintattico, però in questo senso ci aiutano i validator delle custom activities e il designer di WF.
Eccomi qua, dopo ben 1 mese di ferie!!!! Non ricordo periodi di vacanza così lunghi, dai tempi delle scuole! D'altra parte quest'anno ho commesso l'errore ;-) più grande che un uomo possa compiere: mi sono sposato, quindi ci stava di farsi un bel viaggio di nozze e di prendere un po' le misure della nuova vita di coppia.
Da oggi sarò di nuovo operativo e sul pezzo al 100%!
Nell'ultimo mese sono successe parecchie cose, solo per citarne alcune tra le più importanti:
- Il rilascio della CTP di ADO.NET v.next, che si affianca alla nuova build di LINQ rilasciata a maggio (torneremo sul discorso a breve, in un post ad hoc)
- Il rilascio di un aggiornamento di ILMerge, tool molto interessante
- Ho trovato, un po' in ritardo per la verità, XPathmania un ottimo tool di per la scrittura di regole XPath
- Sono uscite nuove build di .NET Framework 3.0, addirittura due, visto che da venerdì sera è uscita anche la RC1 sia di Windows Vista che di .NET Framework 3.0
- L'Italia ha vinto l'Imagine Cup 2006, complimenti a tutti i ragazzi del Politecnico di Torino !!!!
Nel frattempo gli eventi DevLeap dei prossimi 2 mesi vanno benissimo. In particolare l'evento su Visual Studio Team System del 27 settembre è a rischio "sold-out" e il corso .NET 3.0 che terremo dal 2 al 4 di ottobre va molto bene. Se non l'avete ancora fatto, non dimenticate di iscrivervi ad entrambi gli eventi.
Sarà una fine anno molto attiva e con la carica che ho accumulato durante le ferie, non vedo l'ora di fronteggiarla! :-)