Imparare WPF da applicazioni reali

Una domanda spesso ricorrente è come imparare Windows Presentation Foundation (WPF).

UPDATE: Un ottima risorsa in italiano per avere una panoramica di WPF e superare gli scogli iniziali, un vero e proprio MUST da vedere per gli sviluppatori provenienti da Windows Forms, sono i webcast (videolezioni) di Corrado scaricabili gratuitamente dal sito BE IT.

Lezioni dal taglio pratico e conciso che partendo dalle basi si addentreranno nelle migliori pratiche da seguire per evitare gli errori più comuni fino ad arrivare a spiegare il pattern Model-View-ViewModel per strutturare al meglio le proprie applicazioni. Consigliate anche ai più esperti.

 

Oltre a leggere i principali libri sull'argomento (di cui prerequisito essenziale è spesso la conoscenza di un linguaggio del .NET framework come C# o VB.Net) tra i quali consiglio per iniziare Windows Presentation Foundation Unleashed, è fondamentale seguire periodicamente blog tecnici (usando gli RSS si risparmia parecchio tempo), fare tanta pratica e studiare applicazioni reali.

Ricordo che la documentazione ufficiale è MSDN, anch'essa ricca di spiegazioni ed esempi ben fatti.

Per fare pratica è fondamentale riprodurre gli esempi dei libri mano a mano che procede la lettura, non scordando che anche l'SDK di Windows contiene numerosi esempi specifici sulle varie funzionalità di WPF.

Studiare applicazioni reali, seppur comporti un ulteriore sforzo, fornisce però ulteriori vantaggi: l'apprensione dell'organizzazione dei progetti, delle best-practise, dell'architettura dell'applicazione, della redazione della documentazione...

Le applicazioni reali disponibili con sorgente e documentazione che consiglio come casi di studio sono:

HealthCare - Prototipo delle prossime generazioni di applicazioni mediche

healthcareapp

FamilyShow - Geneaologia

familyshowdetail-2 

Tangerine - Esplorazione di cataloghi con un architettura modulare (nella prima release è disponibile il provider per Amazon). Mostra inoltre l'utilizzo di NetAdvantage for WPF.

tangerine 

photoSuru - Album fotografico che permette di visualizzare album web

photosuru

Rilasciato di recente photoSuru mostra inoltre come usare gli Shader tramite WPF (novità introdotta col .NET Framework 3.5 SP1) per realizzare effetti come transizioni e zoom  sfruttando l'accelerazione grafica della GPU. Da non perdere!

Dulcis in fundo frequentare i Newsgroup Microsoft dedicati a .Net, dei gruppi di discussione a tema, permette di entrare in contatto con esperti del settore e chiarificare eventuali dubbi.