Tempo permettendo sto continuando lo sviluppo del mio KAjaxFramework.

Nella primissima versione ho focalizzato lo sviluppo esclusivamente sull'interfacciamento con la base dati, permettendo di sviluppare quasi esclusivamente lato client demandando ai componenti lato server quasi esclusivamente i compiti di lettura/scrittura sul database.
Volutamente avevo tralasciato il fattore 'visuale': nessun effetto grafico tanto caro alle applicazioni Web2.0

Dovendo pero' iniziare un nuovo progetto basato proprio sul mio framework mi sono rimboccato le maniche e applicando la filosofia della Extreme Programming ho riscritto quasi completamente il codice riguardante la presentazione dei dati.

Le modifiche sono parecchie, vi riassumo le principali:

  1. Gestione piu' pulita dei layer: nella vecchia versione i DIV contenenti i MessageBox venivano creati sulla pagina all'atto del caricamento, con degli orridi 'document.write', e poi tenuti nascosti fino al momento in cui venivano utilizzati. Nella nuova versione, ogni DIV viene creato al momento in cui deve essere utilizzato e rimosso dal DOM quando non piu' necessario.

  2. Gestione semplificata del Drag&Drop: creare un oggetto 'draggabile' ora e' piu' rapido e semplice, basta richiamare all'evento OnClick dell'oggetto la funzione dragStart();

  3. Dissolvenze: gli oggetti creati possono essere fatti apparire e scomparire con un effetto di dissolvenza. Non solo uno 'sfizio' grafico: a mio avviso concorrono a rendere l'interfaccia piu' dinamica (nei tempi necessari alle dissolvenze le funzioni di scambio dati continuano a lavorare, dando all'utente l'impressione di minori tempi di risposta dell'applicazione).

  4. Menu' Contestuali: E' possibile associare a un oggetto un menu' contestuale, visualizzabile con il click del tasto destro del mouse.


Per quanto riguarda le funzioni di interfacciamento con la base dati, niente e' cambiato. :-)
Ultima nota: non ho avuto ancora tempo/voglia di scrivere la documentazione, quindi per capire nel dettaglio come funziona l'accrocco dovete spulciarvi i demo che ho realizzato.
Per qualsiasi dubbio lasciate un commento sul post o scrivetemi in privato: non assicuro tempi di risposta immediati, ma faro' del mio meglio! :-)

Potete vedere all'opera le novita' del framework in questa Pagina Demo.

Per ulteriori informazioni e per scaricare i sorgenti aggiornati questa e' la Pagina Del Progetto su Google Code.