bgvs.jpgDopo un paio di versioni beta, Microsoft ha finalmente rilasciato la versione definitiva di Visual Studio 2008, accompagnato dalla nuova versione del Framework .NET, la 3.5

Vediamo nel dettaglio le novità e partiamo subito con una mia perplessità a riguardo: una discreta parte delle nuove funzionalità dedicate allo sviluppo di applicazioni desktop sono orientate all'utilizzo con windows Vista e Office 2007.
Sostanzialmente, tutti i vantaggi derivati dall'utilizzo del nuovo ambiente di sviluppo per la realizzazione di applicazioni stand-alone potranno essere sfruttate solamente se il target di sviluppo è una piattaforma con le ultimissime versioni di Windows e Office.

VS2008 introduce infatti il supporto per Windows Presentation Foundation il sottosistema grafico di Windows Vista: utilizzando il WPF, la realizzazione dell'interfaccia utente in una applicazione avviene tramite la scrittura di codice XAML (eXtensible Application Markup Language), un linguaggio di markup basato su XML (nell'universo opensource il suo equivalente è XUL, derivato dal progetto Mozilla).

L'utilizzo del designer WPF integrato in VS2008 è molto simile a quello del vecchio ambiente di disegno dei Windows Forms, con in aggiunta la possibilità di lavorare in 'SplitView', con la finestra di design affiancata dal codice XAML relativo, come se si stesse sviluppando l'interfaccia di una web application: lo scopo finale a mio avviso è proprio quello di ridurre sempre di più le differenze tra lo sviluppo di applicazioni desktop e web, non per niente la stessa Microsoft sta spingendo per rendere XAML l'erede dell'ormai 'vecchio' HTML.

Incluso nella nuova versione di VS anche il supporto per lo sviluppo di applicazioni con Microsoft Office: compatibile con Office 2003 da tuttavia del suo meglio con il nuovo Office 2007, permettendo di sviluppare applicazioni native che sfruttano la user interface che caratterizza tale versione, come le 'amate/odiate' Ribbon Status Bar, Ribbon Bar e le Mini-Toolbar.

Il nuovo Framework 3.5 introduce anche la tecnologia Windows Communication Foundation, che in poche parole va a semplificare lo sviluppo delle applicazioni di rete unificando in una sola architettura tecnologie diverse come WebServices, Socket, Enterprice Service.
Una volta sviluppato un servizio WFC, da VS2008 è possibile effettuarne il debug senza realizzare una apposita applicazione Host, utilizzando due utility dedicate, il WFC Service Auto Host e il WFC Test Client.

Presente come estensione installabile in Visual Studio 2005, nella versione 2008 il supporto per Windows Workflow Foundation è presente nativamente.
WWF permette la progettazione e lo sviluppo di applicazioni legate a stati ben definiti: un esempio calzante lo si può trovare all'interno di un programma di contabilità. Lo stato di una fattura o di un ordine attraversa degli 'step' ben definiti, utilizzando il WWF e il suo designer presente in VS2008 è possibile definire lo stato dei controlli presenti nell'interfaccia grafica legati a ogni singolo step.

L'accesso alle basi dati è stato rivoluzionato in questa nuova versione di Visual Studio dall'introduzione nel framework 3.5 del linguaggio LINQ (Language INtegrated Query).
Lo scopo di LINQ è di unificare il linguaggio di accesso ai dati: lo sviluppatore lo potrà utilizzare per scrivere query nativamente in VB o C# senza dover ricordare gli eventuali dialetti di SQL legati alla piattaforma di database utilizzata, trattando i dati presenti nel Db relazione come oggetti. Lontanamente è quello che in java si è iniziato a fare con Hibernate, seguito poi da molti 'cloni'.

La realizzazione delle applicazioni web in VS2008 prende invece una piega interessante: .NET 3.5 porta con se infatti il supporto nativo per la programmazione AJAX, riallineando il framework Microsoft a molti altri presenti nel panorama OpenSource già dotati del supporto per ajax.
Con le nuove API è possibile sia sviluppare da zero una nuova applicazione AJAX, oppure migrare una precedentemente sviluppata alla nuova tecnologia utilizzando i controlli ScriptManager e UpdatePanel (vecchie conoscenze di chi ha iniziato in passato a 'spippolare' con ATLAS e AJAX.NET).
Un'altra novità nell'ambiente di sviluppo è la presenza di completamento del codice, dell'intellisense e del debug per il codice Javascript 'Client-Side'.

In definitiva il nuovo ambiente di sviluppo targato Microsoft a mio avviso è degno di uno sguardo piu approfondito, nonostante la fruizione di interessanti funzionalità sia limitata a clients Windows Vista+Office 2007.