Chiunque abbia scaricato il famigerato
Northwind Starter Kit si sarà accorto che, mentre i layer
business e
data sono già strutturati in modo abbastanza adeguato, lo stesso non si può affermare per la parte GUI. Ciò è avvenuto per motivi "storici" che potrei spiegare in separata sede (un altro post ?), se qualcuno fosse interessato al "dietro le quinte" di questo progetto. Rimanendo in tema, però, rimane la "questione GUI": ho quindi deciso di focalizzarmi, in questo periodo, sullo sviluppo di questa parte di progetto.
Mi piacerebbe, ad esempio, che
NSK disponesse di GUI multiple, implementate con strategie differenti: per esempio, sarebbe bello disporre di una GUI architetturalmente povera ma che sia utilizzabile come dimostrazione delle
feature offerte dai toolkit grafici disponibili (web forms, windows forms, compact framework, Avalon, Atlas, Cocoa# ...). Impresa titanica, che davvero necessiterebbe della partecipazione attiva della community. Dovendo effettuare delle scelte contingenti (da qualche parte dovremo pur partire), ho scelto che il primo layer GUI disponibile sarà basato sul pattern
Model View Presenter: assodato che il (domain)
Model lo abbiamo già, il tentativo è di realizzare un
Presenter condiviso tra le
View web e windows, in modo da rendere poco oneroso implementare applicazioni dotate di multiple interfacce utente.
Ho già iniziato i lavori e, tempo permettendo (NSK è pur sempre sviluppato nel tempo libero), mi piacerebbe riuscire a mostrare una prima implementazione per il web durante il corso
"Programmare ASP.NET" che io e
Dino terremo presso Microsoft dal 20 al 24 marzo (
BTW, ci sono ancora dei posti disponibili ), e avere la corrispettiva versione
smart client pronta per il successivo "Object Oriented Design in .NET" del 18 Aprile. Spero di ricevere feedback durante questi corsi, per "aggiustare" (o avrei dovuto dire fare
refactoring) quanto opportuno e poi aggiornare i sorgenti disponibili su Sourceforge..
A remare contro ci sono: roadshow Microsoft, webcast vari e la "normale" vita professionale (si, lavoro -o almeno faccio finta- anche io), ma io ci provo: non sparate sul pianista
<g>