Finalmente la release ufficale di Ext 2.0

untitled-1.gifEra ora ! Con quasi un mese di ritardo rispetto alle previsioni e’ finalmente uscita la versione definitiva della libreria JavaScript ExtJS 2.0.

Con le sue innovazioni, principalmente architetturali, rappresenta un grande passo avanti nella direzione di rich Internet application veramente complete e moderne.
In questa release migliora l’organizzazione del codice (in senso OO), la documentazione, le performance, la facilita’ di programmazione. In particolare tra le tante novita’ ho apprezzato il nuovo modello a componenti/container per l’interfaccia utente, molto piu’ object oriented del passato (ancora piu’ ispirato probabilmente agli usuali framework UI delle piattaforme Java e .NET).

Aumentano le funzionalita’ e i widget; da segnalare le griglie con raggruppamenti e totali, gli scrolling tabs (finalmente!), il layout di tipo anchor che permette appunto di ancorare i widget ad esempio ad un lato della form e tantissimo altro.
Consigliabile dare uno sguardo all’impressionante sample Desktop Sample App che getta le basi per un vero e proprio sistema operativo “remoto”.

Io e i miei colleghi stiamo studiando questo framework ormai da diversi mesi e lo stiamo utilizzando per lo sviluppo di una applicazione abbastanza imponente. Si tratta di un applicativo gestionale per l’organizzazione del lavoro di aziende che effettuano la raccolta differenziata dei rifiuti. Per chi e’ curioso ho pubblicato una demo molto preliminare. Ovviamente la libreria ExtJs 2.0 e l’approccio total AJAX ha un ruolo importantissimo: ci permette di realizzare software web based, con tutti i vantaggi che ne comporta, ma con look&feel simile ad un software desktop. In passato sviluppavamo applicazioni di questo tipo usando l’approccio tradizionale: PHP che genera normali pagine xhtml con form etc. Per quanto questo approccio vada benissimo per applicazioni specifiche e orientate ad Internet (ad es. un CMS o simile) e’ deleterio per lo sviluppo di applicazioni gestionali, soprattutto se si abbracciano metodologie agili che prevedano la prototipizzazione rapida: troppi dettagli di controllare. Una libreria di alto livello permette di astrarsi dei mille problemi dell’interfaccia utente e concentrarsi sulle business rules e sull’usabilita’ complessiva.

Posso tranquillamente affermare che Ext ha cambiato il modo di lavorare del nostro team in relazione a questo tipo di progetti aumentando di molto la produttivita’; per questo motivo sto investendo grandi energie nello studio di questa libreria. E si.. bisogna dire le cose come stanno: ExtJS e’ una libreria piuttosto vasta e complessa e ha di conseguenza una learning curve un po’ impegnativa, senza contare che necessita la perfetta comprensione di JavaScript cosa non scontata, ma e’ tempo ben speso. Dopo un po’ si incomincia a capire il modo corretto per affrontare qualsiasi problemi e si incomicia ad andare molto spediti…

Ovviamento Ext e’ una libreria client, il lato back office bisogna svilupparselo da se’ o trovarlo in rete, non importa in quale linguaggio o con quali strumenti: Ext e’ neutrale rispetto alla tecnologia lato server. Io ad esempio uso un framework PHP+MySQL sviluppato internamente, tutte le comunicazioni avvengono tramite JSON etc, ma volendo e’ possibile usare ad esempio ASP.NET con XML o qualsiasi altra cosa assurda vi venga in mente.

In definitiva consiglio vivamente Ext 2.0 a chiunque abbia bisogno di sviluppare, per lavoro o per hobby, applicazioni AJAX di qualsiasi grado di complessita’, in particolare modo se di tipo business/gestionale, purche’ abbia un po di tempo da investire nel suo apprendimento.

3 risposte a “Finalmente la release ufficale di Ext 2.0

  1. Ottimo articolo, sto provando da un paio di giorni extjs, gli esempi pronti sono veramente sbalorditivi, impressionanti. Nel sito web però ho trovato una scarsissima documentazione, e non riesco a comprendere questo framework, vorrei usarlo per creazione di una webmail, e sto partendo dalle basi, cercando di capire i vari oggetti messi a disposizione. Non riesco proprio a capire come far interagire un albero ed una griglia tramite drag&drop, vorrei spostare gli elementi della griglia all’interno dell’albero, ho abilitato la proprietà enableDragDrop di entrambi gli oggetti ma non è sufficiente. Senza documentazione non so proprio da dove iniziare.
    Hai qualche dritta da darmi?

  2. Grazie! Come dicevo è una libreria piuttosto complessa… la documentazione è ancora non perfetta ma ti posso dire che il migliore metodo di apprendimento (credimi!) è studiarsi molto bene gli esempi che sono invece abbastanza esaustivi… poi ovviamente ti consiglio di darti uno sguardo preventivo a tutta la API che trovi
    su http://extjs.com/deploy/dev/docs/ : non c’è bisogno di guardare ogni singolo metodo ma avere una mappa mentale di tutto aiuta. Il tuo progetto è abbastanza ambizioso e anche interessante… per rispondere alla domanda specifica devo dirti che quello del DD è un argomento che non ho ancora affrontato dunque sinceramente non so ancora risponderti: quando capiterà (e capiterà) probabilmente farò un post apposito. Nel frattempo ti consiglio di iscriverti al forum e cercare, la maggiorparte delle dritte le ho beccate proprio li’. Buona fortuna!

  3. e della versione 3 cosa ne pensi?

Lascia un commento