Rientro dalle ferie? Microsoft Lightswitch a tutta forza!
www.microsoft.com/visualstudio/en-us/lightswitch/overview/comparePochi giorni prima delle mie ferie, esattamente il 27 Luglio scorso, ho seguito un evento in streaming dedicato interamente a Microsoft Lightswitch 2011, organizzato dalla community italiana dedicata proprio a questo nuovo prodotto. Per chi se lo fosse perso, le registrazioni alle varie sessioni sono disponibili a questo indirizzo (attenzione, dovete essere utenti registrati per visionarli).
Fino a quel giorno avevo sentito parlare poco di Lightswitch 2011. Qualche tweet, qualche news, qualche post da parte del nostro amico Alessandro Del Sole. L’evento, molto interessante, ha messo in mostra le caratteristiche principali del software, partendo dai concetti più semplici fino alle features più avanzate. Non so perchè, deve essere stato una sorta di sesto senso, ma sentivo che Lightswitch potesse essere un cavallo su cui puntare, e sono riuscito a trasmettere questo interesse internamente a Brain-Sys. Ho seguito l’evento, sessione dopo sessione, ho twittato i contenuti che trovavo più stuzzichevoli e ne sono uscito con una determinazione che mi ha fatto dire: “Cascasse il mondo, devo provarlo e studiarlo almeno un po’!”.
Ma torniamo un po’ all’inizio. Cos’è esattamente Microsoft Lightswitch? Definirlo è forse un po’ complicato. Le caratteristiche che lo contraddistinguono sono:
- Strumento di sviluppo RAD (Rapid Application Development)
- Viene di fatto installato all’interno di VS2010, comparendo come nuovo tipo di progetto (nota: Lightswitch è utilizzabile anche come prodotto stand-alone, vedere in fondo al post)
- Ideale per applicazioni data-centriche
- Generazione automatica di tabelle ed interfaccia utente Silverlight 4 (applicazione desktop OOB oppure fruibile via browser)
- Infrastruttura n-tier con WCF RIA Services
- Deploying automatico su un server Web (esempio: un server Web locale, oppure remoto in hosting come winhost.com, etc.)
- Supporto per le autenticazioni e autorizzazioni tramite Membership Provider
- Estendibilità tramite controlli custom
- Al 100% mi sto dimenticando di qualcosa: vi consiglio di googlare o di visitare il sito Web ufficiale per tutte le info
Il fatto è che se dovete creare un’applicazione Web in breve tempo per costruire anagrafiche, un piccolo gestionale, una rubrica, un archivio di qualche tipo, qualsiasi cosa che lavori sui dati, probabilmente Lightswitch 2011 fa al caso vostro. Il database è completamente auto-generato in base alle entity che disegnate, la UI è auto-generata in base a ciò che stabilite all’interno dello Screen Designer, potete inserire regole di validazione, potete avere la UI localizzata, potete scrivere codice custom (ad esempio per aggiungere calculated property, per aggiungere alla UI Button custom, per validare entity), potete creare controlli Silverlight da incorporare in Lightswitch. Insomma, il vostro lavoro può partire considerando Lightswitch come un ambiente di sviluppo “sempliciotto” e molto RAD, ma vi posso assicurare che, spremendolo a dovere, potete ottenere degli ottimi lavori.
Parliamo di deploy. Quando la vostra applicazione è terminata, dovete ovviamente deployarla da qualche parte. La procedura di publishing di Lightswitch fa in modo di semplificare il più possibile il compito al developer (assumendo che non abbia skill a sufficienza) e può avvenire secondo due metodi:
- Deployare direttamente da Visual Studio 2010 sul server Web (locale o remoto)
- Generare in locale sul proprio PC un file di package (che non è nient’altro che un file zip), da importare sul server Web tramite la console IIS installata localmente sul proprio PC
In ambedue i casi, ovviamente, dovete avere i permessi e le credenziali adeguate. Non solo: se stiamo parlando di deployare su un vostro hosting (come nel mio caso http://winhost.com o http://discountasp.net), dovete assicurarvi che questi supporti Lightswitch, con tutta una serie di pre-requisiti. Il provider può adeguarsi in modo piuttosto semplice usando il Web Platform Installer, che fa tutto in automatico. E se invece cercate un hosting già pronto per Lightswitch, il sito Microsoft riporta qualche informazione in merito a questo indirizzo. Ultima menzione: Lightswitch supporta anche il deploy su Azure. Mica male, no?
Per concludere, in circa una settimana di lavoro ho messo in piedi un prodotto che – se fatto da zero ed a parità di complessità tecnologica – avrebbe richiesto sicuramente molto, molto, molto più tempo. Trattandosi di un progetto reale non posso in questo momento scendere nel dettaglio, ma vi posso assicurare che la produttività è stato altissima, al punto che abbiamo già deployato una versione beta da far vedere al cliente.
Ultimissime note: grazie ad Alessandro Del Sole per il suo costante impegno ad aiutare il prossimo, e grazie a tutta la community italiana www.lightswitch.it, che si dimostra attiva e di buon livello, considerando che si tratta di un prodotto appena uscito sul mercato.
Giovedì 1 Settembre 2011, 22:24 – Aggiornamento dell’ultim’ora. Giustamente, mi è stata fatta notare una cosa importante su Microsoft Lightswitch. Se già possedete Visual Studio 2010, Lightswitch si installa all’interno di questo ambiente di sviluppo – come già ho detto prima, lo avete come un nuovo tipo di progetto. Se non possedete Visual Studio 2010, niente paura: Lightswitch è anche un IDE separato, per cui potete tranquillamente utilizzarlo anche in questo modo. Qualche info in merito la trovate qui (comparazione tra Lightswitch stand-alond e Lightswitch con VS2010).