Reintrodotto in modo più che massiccio ormai da tempo, il JavaScript vanta un ampio parco di framework utili per aggiungere
dinamicità, effetti, interazioni asincrone ed altro ancora, spesso in pochissime linee di codice.
In questa panoramica si tenterà di descrivere al meglio potenzialità, campi di impiego, pregi e difetti di alcune tra le librerie più famose.
ActiveWidgets
Descrizione
Uno dei primi framework component oriented, in grado di mostrare elementi dalle caratteristiche simili a quelli di un programma desktop.
Non del tutto completo, non tra i più compatibili, non tra i più semplici da usare, questo framework non è nemmeno gratuito ma l'esperienza
pluriennale ed il codice più che collaudato lo inseriscono prepotentemente quelli Enterprise Ready.
Impressioni
La pagina di presentazione dei componenti è impressionante per la somiglianza
voluta e decisamente ben riuscita del pannello proprietà del browser Internet Explorer.
Difficile non rimanere positivamente colpiti dall'aspetto grafico dei componenti e con qualche piccolo test è possibile valutare di persona
l'efficienza di ognuno di essi.
Delude un po' la griglia, gadget di punta di questo framework, bella ma ancora problematica per scrolling su browsers diversi dal solo IE.
Pregi
- risultato grafico eccellente
- matura ed Enterprise Ready
Difetti
- è a pagamento
- peso non proprio contenuto (oltre i 100Kb)
- ancora poca compatibilità con browsers standard quali Safari ed Opera
- il gadget di punta, la griglia, ha ancora qualche problema di utilizzo
Giudizio
Un buon framework, ma concettualmente troppo datato.
Il mancato supporto per browser oggi molto usati come Opera e Safari è forse il peggior difetto,
tanto più che vanta un peso complessivo superiore ai 100Kb ed è a pagamento.
Il mancato aiuto in fase di sviluppo da parte di questa libreria adatta quasi esclusivamente ad aggiungere
solo componenti simil desktop non la posiziona sicuramente ai vertici della classifica poiché richiede l'utilizzo di
altre librerie qualora lo scopo sia sviluppare rapidamente.
Se a quanto detto si aggiunge il mancato supporto di effetti speciali, tipici di altri concorrenti, difficilmente il giudizio potrà essere positivo.
AjaxFace
Descrizione
Più che un framework, un vero e proprio ambiente di sviluppo.
Ricco di componenti e funzionalità, potente, flessibile ed innovativo, questo gigante buono sembra promettere uno sviluppo
sia di pagine web sia di veri e propri applicativi on-line in pochi passaggi.
Gestione della cache, supporto di template ed altro ancora lo rendono sicuramente tra i più indicati
per lo sviluppo di applicativi intranet, soprattutto perché la mole consistente di codice utilizzato
è da considerare quasi improponibile per siti pubblici.
È parte di applicativi molto interessanti utilizzabili tramite browser ed ha un antagonista server dedicato veramente promettente.
Impressioni
L'urlo allo scandalo per il peso delle demo è bloccato sul nascere dagli applicativi mostrati.
Sharing di ogni tipo di documento, progettazione a diagrammi di presentazioni, interazioni e documenti,
gestione asincrona di campi di un database ed interfacce graficamente gradevoli, intuitive, funzionali ed abbastanza veloci
causano soprattutto stupore!
Pregi
- completa e molto potente
- innovativa
- back end dedicato con il quale si integra alla perfezione
- core di veri e propri applicativi scaricabili gratuitamente
Difetti
- pesante oltre ogni limite
Giudizio
Se la prima demo non pesasse oltre 800Kb e la sola libreria 500Kb potrebbe stare in cima allla classifica per la mole
di strumenti messi a disposizione degli sviluppatori.
Assolutamente inadatta per qualunque sito internet, uno dei migliori candidati per una intranet.
Ottimo framework ma probabilmente il meno orientato al web di tutta la lista.
Backbase
Descrizione
Tra i più famosi, tra i più completi, tra i più avanzati, Backbase, a detta del sito stesso, è il framework numero 1 per quel che riguarda Ajax.
Disponibile per tutti, non utilizzabile se non a pagamento ed orientato soprattutto agli sviluppatori Java ma adatto anche
a tutti gli altri linguaggi grazie al solo pacchetto client.
Impressioni
Tra i primi a mostrare un framework completo, potente, cross platform e basato sulla gestione eventi tramite XML dedicato e trasformato dalla stessa libreria
in pagine ricche di interattività, usabili, compatibili ed infine più che accattivanti.
Il sistema degradabile adottato da Backbase ha fatto un po' scuola in passato ed anche oggi viene spesso proposto da siti di ogni tipo, seppur non sia tra i più indicati per problematiche differenti.
Eccellente, dalla documentazione alle potenzialità, ma quel numero 1 non deve fuorviare... difficile considerarlo il migliore sotto molti aspetti.
Pregi
- tra i più ricchi in termini di componenti e caratteristiche avanzate
- componenti graficamente accattivanti, oltre che funzionali
- Enterprise Ready, rivolto soprattutto agli sviluppatori Java ma sfruttabile anche con altri linguaggi
- potentissimo ma altrettanto semplice da utilizzare, basato su un sistema proprietario di gestione interfacce ed eventi
Difetti
- è a pagamento per un uso commerciale, anche nella sola versione client
- il peso base della libreria è di 150Kb, contenuta per il numero di feature presenti ma poco adatta a siti pubblici
- non è facilmente implementabile su template diversi dal modello proprietario
- inutilizzabile in siti che lessero rispettare gli standard internazionali definiti dal consorzio W3
Giudizio
Indubbiamente è tra i framework migliori che ci siano in circolazione e probabilmente la scelta più adatta per chi sviluppa in Java.
Peccato sia a pagamento ma in questo caso più che mai potrebbe valere la pena spenderci soldi tanto più che tra i partener sono presenti gruppi come BEA, Oracle ed IBM.
Assolutamente da provare, almeno la versione trial o meglio ancora la gratuita Community Edition, la soddisfazione sarà garantita.
Bindows
Descrizione
Un framework caratterizzato dalla presenza di finestre e componenti praticamente identici a quelli del Windows.
Basato sul mondo Swing, sicuramente noto agli sviluppatori Java, questa libreria permette di simulare programmi di vario tipo in modo analogo, se non identico, a quelli usati tutti i giorni.
Impressioni
Fantastico ma non ha nemmeno una community edition come il rivale Backbase e questo lo penalizza immediatamente.
Anche solo per mostrare una presentazione delle potenzialità ci hanno messo del tempo, quasi avessero paura che qualcuno avrebbe potuto copiare il loro codice alquanto prolisso e poco adatto ad internet.
Difficile non cogliere l'impressionante somiglianza di quanto mostrato nella demo con gli applicativi usati tutti i giorni,
facile invece cogliere il peso mastodontico della libreria caricata runtime da una base che da sola si aggira attorno agli 80Kb.
Sviluppo intranet ed Enterprise sembrano essere il luogo ideale dove sfruttare a pieno tutte le features proposte.
Pregi
- strumenti estremamente simili a programmi Desktop, più che familiari
- molto potente e sicuramente di sviluppo familiare per gli sviluppatori Java
Difetti
- solo a pagamento (valutabile gratuitamente)
- troppo pesante per siti pubblici
- interfacce simili al Desktop ma ben distanti dall'attuale grafica Web 2.0
Giudizio
Rischia di deludere, ma una prova non costa niente.
La troppa somiglianza con l'ambiente Desktop è interessante ma graficamente poco curata, sembra di essere tornati al Windows 98 più che proiettati nell'era Web 2.0.
Sicuramente ben fatto e potenzialmente ai vertici della classifica ma troppo poco innovativo.
crossvision Application
Descrizione
Una vera e propria suite di applicazioni, componenti ed un ambiente di sviluppo decisamente notevole.
Altro framework Enterprise utilizzabile gratuitamente solo per qualche giorno e rigorosamente a pagamento.
Due parti in particolare, quelle analizzate, il Composer ed il Designer.
Impressioni
L'automazione assistita per la creazione di interfacce Web 2.0, questo l'obiettivo e la proposta crossvision che si presenta sotto una veste molto professionale.
Il Composer è una suite dedicata alla creazione, gestione e manipolazione di flussi dati asincroni per interfacce Web ricche di funzionalità,
mentre il Designer è il solo ambiente di sviluppo contenente tutte le componenti sfruttate dal composer e sfruttabili dagli sviluppatori.
Tale ambiente è rigorosamente basato su Java e server Tomcat e l'impressione è di avere a che fare con un applicativo forse eccessivo per il solo sviluppo Web.
Pregi
- suite di applicazioni completa per lo sviluppo assistito di applicativi Web 2.0
- robusto ed affidabile, Enterprise e rivolto soprattutto agli sviluppatori Java
Difetti
- ambiente di sviluppo a pagamento
- libreria client molto pesante
- poca compatibilità server
Giudizio
L'ambiente di sviluppo è importante ma quando si parla di JavaScript è difficile apprezzare un framework che non sia
compatibile con diversi browser attuali e soprattutto con linguaggi server che non siano Java.
La posizione è quindi tra Backbase e Bindows, buon prodotto ma il loro stesso sito di presentazione non è sviluppato con quanto proposto ... e questo
non fa proprio scaturire pensieri positivi sulle reali capacità di impiego.
DOJO
Descrizione
Un colosso in continua evoluzione appena arrivato alla versione 4 e probabilmente oltre nell'arco di pochi giorni.
Un Framework con la F maiuscola dove l'ottimo codice sviluppato da professionisti noti provenienti da ogni parte del mondo
è capace di soddisfare in pochi passaggi tante esigenze più o meno attuali inerenti sia il Web che le intranet.
Impressioni
Quando sponsor del calibro di IBM, AOL ed OpenLaszlo stanno "dietro" un progetto gratuito c'è solo da impallidire davanti
alla potenza disponibile per tutti che questo framework mette a disposizione di tutti gli sviluppatori Web ed intranet.
Una donazione sarebbe il minimo da fare per ringraziare i numerosi sviluppatori di questa potente libreria
basata su un namespace proprietario, caricata in modo incrementale e ricca di potenti widget e funzioni che
rendono lo sviluppo di applicativi orientati al browser veramente più veloce, facile e migliore.
Demo, documentazione e libri non mancano, il supporto agli sviluppatori è garantito e l'unico vero neo,
se proprio si vuole trovare l'ago nel fienile, è la dimensione non proprio contenuta di tutto il sistema.
Pregi
- potente, robusto, completo, non invadente (basato su namespace) e gratuito
- codice JavaScript molto pulito, ottimizzato e commentato in ogni parte
- ricco di documentazione e vasta comunità di supporto
Difetti
- non è tra i più semplici, il namespace è vasto e non sempre di immediato utilizzo
- molto pesante, aiutato dal caricamento incrementale delle singole parti di libreria e dalla cache ma non sempre adatto per siti pubblici
Giudizio
AOL ha messo a disposizione una cartella per sfruttare DOJO tramite inclusione di script remota, il che
si traduce in un download quasi immediato, a prescindere dal sito visitato, salvo al primo caricamento di ogni parte della libreria, sempre che sia sfruttata.
Considerando quindi che in alcuni casi il peso di questo framework potrebbe non essere un problema rilevante non resta
che applaudire lo sforzo continuo dei suoi sviluppatori e testare almeno una volta i file di questo toolkit leader in questa classifica.
Nitobi
Descrizione
Un framework contenente soprattutto due componenti, ben fatte, robuste e ricche di funzionalità.
Un diretto rivale di ActiveWidgets ed in parte di Backbase e come questi, a pagamento.
Impressioni
Il sito è curato ed in stile Web 2.0, probabilmente tra i più accattivanti visti fino ad ora ma ha una piccola pecca:
alcuni link che sfruttano la libreria JS proposta non funzionano, almeno non in FireFox 2.0, primo motivo di delusione.
Approfondendo le potenzialità è possibile notare alcuni esempi della griglia o della combo, deludenti anche questi poiché
in quasi 600 Kb totali di JavaScript si sarebbe potuto fare un intero portale e non una tabella che scrolla male,
mostra lentamente le informazioni ed intasa il browser di operazioni utili solo a sprecare ulteriore memoria.
Pregi
- potenzialità discrete
Difetti
- a pagamento
- codice JavaScript non ottimizzato, non troppo compatibile e discutibile sotto molti aspetti
- una valanga di Kb inadatti al Web per una manciata di componenti, limitato nel suo insieme
- non del tutto compatibile e sfrutta un sistema proprietario per la trasformazione e gestione dei componenti
- componenti non innovative né uniche e qualitativamente inferiori rispetto alternative gratuite e non
Giudizio
Da 100 a 0 con un incremento da Ferrari, tutto l'entusiasmo iniziale in apertura sito è svanito al primo approfondimento.
Se proprio si vuole spendere per una licenza, questo framework è da considerare tra gli ultimi della lista.
Engine for Web Applications
Descrizione
Un framework completo quanto articolato e pesante, caratterizzato da feature utili ma non indispensabili
e sviluppato dal "lontano" 2002.
Basato su un namespace semi proprietario non troppo invadente, lo stile è molto simile a quello di Dojo.
Impressioni
Brutto il sito, ottima la documentazione, questa la prima impressione, che lascia intendere quanto
la libreria proposta sia incentrata sulla serietà della stessa e non sulla sola facciata come visto in precedenza.
La API è ottima, ci sono strumenti semplici o avanzati per gestire, creare, monitorare, interagire con linguaggi server di ogni tipo
ma il codice utilizzato non solo è quasi illeggibile, ma non sembra del tutto ottimizzato.
Gli esempi mostrano come con tre o più file ed una moltitudine di linee tra codice JS e markup sia possibile fare cose veramente basilari
che non giustificano affatto il peso eccessivo della libreria e rendono dubbie le sue reali potenzialità.
Pregi
- tra le più vecchie, quindi affidabile e compatibile
- basata su un namespace ben articolato e ricca di funzionalità
Difetti
- dichiarazione del namespace inspiegabilmente invadente, può sovrascrivere funzioni di altre librerie
- troppo pesante per ciò che vorrebbe offrire
- sviluppo troppo articolato tra XML, JS proprietario non ottimizzato e codice aggiunto dallo sviluppatore anche per fare procedure semplici
Giudizio
Probabilmente un approfondimento delle caratteristiche non potrà far danno ma la forzatura della gestione non vincolante tra XML e la libreria proposta
rischia di essere il suo stesso tallone d'Achille, richiedendo uno sviluppo prolisso, lento e fin troppo macchinoso.
Buono l'intento, troppo dubbio il campo di impiego.
Freja
Descrizione
Un framework Open-Source MVC, particolare per la modalità di utilizzo, non troppo maturo come progetto.
Impressioni
Un MediaWiki come sito di presentazione, qualche link non funzionante ed un'API orientata soprattutto alla creazione e gestione di form.
Freja sembra la parte mancante di qualche altro progetto, probabilmente troppo giovane e sicuramente di prolissa implementazione.
Vero che l'MVC puramente client potrebbe essere interessante come approccio allo sviluppo Web, altrettanto dubbia la possibile implementazione su sistemi server già basati su MVC.
Più che un'innovazione quindi, un modo non troppo convincente di sfruttare una libreria che in questo caso richiede più di un file per essere gestita ed ha diversi limiti intrinsechi del modello scelto in questo ambito.
Pregi
- singolare per la struttura e per le caretteristiche
- codice pulito, ben descritto ed integrabile con Dojo ed altri framework
- non invadente, sfrutta un namespace tutto suo
Difetti
- limitato e non completo
- inesorabilmente lento, tre chiamate per ogni interazione
- né enterprise ready, né newbie ready... campo di impiego e di sviluppo dubbio
Giudizio
Inutile perdere tempo per un progetto tanto particolare quanto incompleto, insensato e dispendioso
in termini di risorse richieste, banda utilizzata e facilità di implementazione come questo.
Framework, se così si può definire, bocciato su quasi tutti i fronti... ma almeno il codice è scritto bene.
JackBe NQ Suite
Descrizione
Il primo framework ad aver sviluppato componenti grafici per interazioni avanzate, sicuramente Enterprise Ready e probabilmente tra i più maturi.
Impressioni
Un IDE? Un framework? Di sicuro la promessa "abbiamo pensato anche alle connessioni 56Kb" non sembra essere del tutto mantenuta dato il peso percepibile
della demo.
Non scaricabile e non testabile... se i componenti sono quelli mostrati dalle varie immagini di sicuro non sembra superiore a nessuno.
Pregi
- tra i primi framework multi-purpose JavaScript, indubbiamente maturo
- più leggero di altri framework Enterprise
- facile da implementare
Difetti
- più leggero... ed offre anche meno
- deludente per caratteristiche non esclusive
Giudizio
Probabilmente un must per chi sta cercando un framework mediamente ricco, leggero e maturo,
uno delle tante varianti disponibili invece per tutti quelli che cercano "banalmente" un toolkit per sviluppare.
Javeline FrameWork
Descrizione
Un altro veterano in ambito JavaScript ed Ajax, in grado di creare applicativi degni di nota
visionabili sul sito della stessa API o in qualche demo (sempre che funzioni!).
Impressioni
L'aspetto professionale del sito e le prime buone impressioni vengono oscurate da link non funzionanti, demo inutilizzabili con alcuni browser ed incapacità di caricare parte della lunga
lista di librerie esterne sicuramente non leggere, almeno non quanto il file base utilizzato.
Approfondendo le caratteristiche è possibile notare come gli strati multipli gestiti dalle varie proposte del sito siano un modo
più che professionale di gestire i componenti, le interazioni ed i vari layer interposti tra il linguaggio server e l'esperienza dell'utente.
Sebbene la portabilità per linguaggi server sembri quasi totale, delude la voglia di vendere a tutti i costi tutte le varie
parti che compongono il sistema Javeline per avere un ambiente Enterprise completo.
Pregi
- framework completo e maturo
- componenti graficamente accattivanti e con skin personalizzabili
Difetti
- sistema multi strato interessante ma non integrato nel solo framework
- non troppo leggero né compatibile con browser comuni
- sistema di lincenze multiple che implica un costo incrementale della piattaforma di sviluppo proposta
Giudizio
Un buon sistema limitato probabilmente ed appositamente nel solo framework non gratuito né facilmente valutabile.
Indubbiamente un'ottima soluzione Enterprise, dato che una delle demo mostra un applicativo stile conto corrente on-line,
ma la richiesta quasi obbligata dell'adozione di altre soluzioni di contorno, il peso paragonabile ad altri framework analoghi ed il costo
aggiuntivo non sembrano permettere un giudizio oltre la sufficienza.
jsLINB
Descrizione
Un potente e gratuito toolkit di sviluppo per implementare interazioni asincrone, componenti grafici ed altro ancora.
Attualmente alla versione beta 0.2, dal peso non proprio contenuto ma dalle ottime potenzialità.
Impressioni
Probabilmente uno dei rivali diretti del framework Dojo e simile per molti aspetti a quest'ultimo.
Caricamento dinamico dei componenti aggiuntivi, namespace ben definito e non invadente, ottime possibilità di controllo
ed un buon codice disponibile anche in versione compressa permettono a jsLINB di stare in un file di circa 50Kb nella sola versione core.
Buoni gli esempi proposti nel sito, interessante il pannello di output realtime per il debug e considerando che il codice compresso
pesa la metà di Dojo, compresso anche questo, l'insieme diventa ancora più interessante.
Pregi
- gratuito, completo, potente e facile da utilizzare
- implementabile in pochi passaggi sopra qualunque layout (compatibile con svariati linguaggi server)
- componenti grafici curati e funzionali
- utilissimo pannello di output in tempo reale per fare debug
Difetti
- poco rassicurante in produzione, dalla 0.1beta si è passati alla 0.2beta, nessuna versione è ancora stabile
- codice non proprio pulito né troppo descritto ed ancora pesante nella versione packer (50Kb)
- il solo core può fare molto ma non tutto e l'insieme sfiora i 200Kb di codice compresso e non
- pretende browser molto aggiornati, partendo da IE6 e scartando perfino FireFox 1.0
Giudizio
La parte più interessante è sicuramente la possibilità di fare debug in tempo reale tramite l'apposito pannello.
L'aggiunta di una sfilza di metodi utili per controllare ogni parte di una interazione asincrona e delle parti
caricate dinamicamente per avere componenti grafici sicuramente user friendly posiziona questo framework ai vertici
della classifica, peccato sia tutto rigorosamente beta e peccato per la mancata versione packer del componente UI.
Da provare e testare a pieno per verificare quanto sia sfruttabile in produzione e quanto sia ancora da sistemare ma resta
una valida alternativa a Dojo, seppur meno cross-browser.
JsRia
Descrizione
Progetto giovane ma interessante, si adatta automaticamente a qualunque linguaggio server purché
produca un layout parsabile dalla libreria JavaScript proposta.
Impressioni
Il sito scarno e la demo graficamente discutibile lasciano un po' di perplesità sulle reali potenzialità del framework.
Analizzando meglio il concept, però, si può notare come tale libreria sia effettivamente particolare al punto
da non richiedere una conoscenza del JavaScript.
Tale libreria infatti crea dinamicamente il JavaScript basandosi sul solo markup.
Questo approccio è molto simile a quello proposto da Backbase o altri, solo che il codice della pagina
risulta essere molto più pulito e probabilmente, con alcuni componenti grafici, validabile come standard.
Pregi
- semplicissimo da utilizzare
- compatibile anche con browser non troppo recenti
- basato su caricamento dinamico dei moduli
Difetti
- sito non curato, libreria praticamente fantasma
- i moduli non sono intrusivi ma il layout potrebbe risultare ingestibile per diversi browser qualora la libreria non dovesse partire
- pesante se si sommano tutti i moduli
Giudizio
Poche potenzialità ma il progetto è interessante.
Si spera maturi presto e soprattutto che sito e documentazione diventino sfruttabili.
Pessimo, allo stato attuale, il giudizio.
Macao
Descrizione
Un framework Open Source orientato soprattutto all'intrattenimento grazie alla
possibilità di creare animazioni attraverso immagini o elementi del DOM.
Impressioni
Esilarante! Un framework con un'API stile Java completa e funzionante per creare giochi di carte,
città virtuali e chissà cos'altro ancora!
Un palese esempio di stravolgimento di quello che vorrebbe essere una pagina Web e di come dovrebbe essere usato
il JavaScript o DHTML che sia.
Risultati discutibili così come la compatibilità. E da quando Adobe ha deciso di rendere Open Source il formato FLA,
sviluppabile anche sotto Eclipse gratuitamente per creare i noti file SWF per il Flash Player,
non si capisce perché qualche sviluppatore JS debba seguire una direzione assurda come questa.
L'estrema inutilità ed inefficienza pratica regnano incontrastate, probabilmente un esperimento molto divertente ed utile da studiare
a scopo esclusivamente didattico.
Pregi
- esperimento divertente
- Open Source
Difetti
- pesantissimo per quello che offre... e non ha nulla di particolare o utile da offrire
- resa effettiva oltremodo deludente
- libreria più immagini per un circuito graficamente brutto per un peso 5 volte superiore a quello di un SWF analogo
Giudizio
Forse è già stato detto tutto e il sunto è questo: da non utilizzare. Per fare quello che promette e ben altro esistono altre tecnologie molto più adatte e perfino più portabili o compatibili.
MochiKit
Descrizione
Un potente e completo framework con licensa MIT, gratuito e ridattabile per ogni esigenza.
Uno degli ultimi arrivati ma tra i più popolari, grazie all'ottimo codice utilizzato
all'interno del proprio namespace.
Impressioni
Lo stile è quello Dojo, framework con il quale si integra alla perfezione, l'API è completa,
il sito ben fatto e la documentazione on-line oppure on-file eccellente.
Unico neo è il peso non contenuto della libreria per un totale di circa 200Kb.
La potenza, l'affidabilità e la semplicità di utilizzo, nonché la compatibilità
cross browser sono tutte garantite dall'esperienza maturata dagli sviluppatori.
Impressione dunque ottima, questo framework non poteva presentarsi meglio.
Pregi
- codice pulito, ottimizzato e ben documentato
- Enterprise Ready ed Open Source con licensa MIT
- API completa, come la documentazione
- ottima compatibilità cross browser
- namespace non invadente, interoperabile anche con altri frameworks
Difetti
- a pieno regime sfrutta 200Kb di codice, troppo pesante e non esiste una versione lite né packer
Giudizio
Ottimo framework adatto per i più esigenti come per i meno preparati.
Mootools
Descrizione
Un framework Open Source con licensa MIT Style rinnovato di recente e finalmente stabile.
Capace di offrire effetti accattivanti, vanta di un ottimo codice oltre che un ottimo sito di presentazione e relativa documentazione.
Impressioni
Dalla piccola e nota moofx al rinnovato mootools il passo è stato rapido, veloce e decisamente degno di nota.
Tra i tanti della lista è tra i migliori per qualità del codice proposto, peso e potenzialità.
La divisione a pacchetti, selezionabili in base alle dipendenze di ognuno di questi, e scaricabile in vari formati
completano l'insieme e la facilità di estendere componenti o classi è ai vertici della classifica.
Ideale quindi per i meno esperti come per i più preparati che potranno godere di un elegante e completa struttura base da implementare a proprio piacere.
Pregi
- ormai maturo per diventare una versione 1.0
- ottimo codice Open Source ampliamente documentato
- peso contenuto ma potente ed abbastanza completo
- semplice da utilizzare ed implementare, adatto ai meno preparati come ai più esigenti
Difetti
- compatibilità molto buona ma la versione di Internet Explorer minima richiesta è la 6
- non ha un namespace proprietario, rischia di essere invadente
Giudizio
Purtroppo lo spunto iniziale, basato su Prototype, si fa sentire ed è un vero peccato che questo framework leggero e potente soffra di alcuni difetti tipici di Prototype (memory leaks abilmente esclusi).
Se l'intento è sfruttare a pieno questo framework ed estenderlo piuttosto che sfruttare altri script o librerie, difficilmente
si potrà rimanere delusi come difficile sarà possibile trovare concorrenti migliori.
Giudizio finale? Eccellente.
Open Rico
Descrizione
Un toolkit di componenti grafici e non scritto sopra un altro framework noto, Prototype.
Open Rico vanta una delle migliori griglie pilotate da Ajax, oltre ad altri componenti interessanti, ed è completamente gratuito.
Impressioni
La semplicità e l'efficienza dei componenti Rico sono raramente eguagliate da altri concorrenti.
Il peso, considerando quanto questa libreria possa offrire, è indicativamente moderato, circa 88Kb per una versione
pulita e commentata, che assieme alla base, Prototype, arriva a toccare i 140Kb.
Purtroppo Prototype non è sempre ben vista per via della poca cura degli sviluppatori nel non voler stravolgere
il codice di tutti gli altri ma in questo caso, più che in altri, l'accoppiata sembra essere vincente.
Pregi
- gratuito, cross browser ed abbastanza potente
- componenti facili da usare ma estremamente utili
- peso relativamente contenuto
- si basa su Prototype, può convivere con altre librerie che si basano su Prototype senza richiedere banda aggiuntiva
Difetti
- si basa su Prototype, rischia di penalizzare altre librerie
- la versione non compressa sarebbe da evitare a favore di una più compatta
Giudizio
Basta vedere qualche demo, documentanta in un componente Accordion, per rendersi subito conto di quanto sia
immediato l'utilizzo di questo framework e quali siano le potenzialità.
Ottimo sotto molti punti di vista. Resta il dubbio su Prototype, non dipendesse da quest'ultima, sarebbe stato un vero must.
Plex Toolkit
Descrizione
Un altro colosso alla Backbase completo e molto potente.
Impressioni
Nonostante il codice sia ben indentato ma non molto commentato, il peso totale di questo framework si aggira attorno ai 550Kb.
Il caricamento incrementale ottimizza i tempi di download in modo intelligente ma dalla pagina
della demo ci si poteva forse aspettare qualcosa in più.
Ottimi componenti, ottimo il namespace e libreria sicuramente completa.
Un problema con il tree in FireFox 1 e la lentezza in risposta di qualche componente grafico fanno pensare
ad una ottimizzazione poco curata del codice e l'utilizzo della memoria può confermarlo.
Forse non è in grado di competere, per qualità del codice scritto, con altri framewrok della lista ma
resta un ottimo candidato per applicativi Enterprise.
Pregi
- completo, stabile e ben documentato
- buona compatibilità cross browser ad eccezione di qualche componente
- ottima API e relativa documentazione
Difetti
- eccessivamente pesante nel suo insieme per un sito pubblico
- deludenti tempi di risposta di componenti e interazioni
- compatibilità non sempre garantita
Giudizio
Un ottimo framework professionale ma più adatto ad una intranet che ad un sito.
Sembra quasi ingiustificato il peso complessivo ma uno sguardo all'API farà notare quanto sia potente oltre i soli componenti grafici.
Almeno un test è consigliato, chissà che non diventi la libreria preferita.
Prototype
Descrizione
Il più noto, il più utilizzato, il più sfruttato, Prototype è il framework alla base di tanti altri progetti, è gratuito,
non è troppo pesante ma è anche tra i più discussi di questa lista.
Impressioni
Il sito è forse il più semplice in assoluto, un paio di link per la libreria e niente più.
Solo recentemente è stato ristrutturato e la nuova versione proposta sembra essere proprio ben riuscita.
Prototype è un framework a metà tra il controllo e la semplicità di sviluppo.
Il vasto uso di metodi proprietari aggiunti, tramite Prototype, alle classi native e non di questa libreria
è alla base del suo semplice, quanto geniale, nome.
La documentazione non è eccellente, i nomi scelti per estendere le classi native non sono presi dagli standard,
i problemi di gestione memoria (memory leaks) sono "compresi nel prezzo" ed il codice utilizzato non è dei migliori.
Il perché questo framework abbia avuto tanto successo se lo domandano in molti nell'ambiente ma la risposta più plausibile
è che di fatto questa libreria è sicuramente comoda ed estremamente semplice.
Vuoi per la serie di metodi più che utili, vuoi per la semplicità di utilizzo, questo framework è diventato quasi uno standard de facto
ed ha la presunzione di sovrascrivere metodi e proprietà di classi primitive o funzioni/librerie proprietarie.
Nessun namespace, una caratteristica simbolo, la funzione dollaro "$". Per chi non l'avesse ancora provato è sicuramente giunto il momento
di dedicargli almeno qualche minuto.
Pregi
- il framework più noto, sicuramente maturo e stabile
- semplicissimo da utilizzare ma potente
- ottima base per creare applicativi più complessi (Rico e Script.aculo.us ne sono un esempio)
- ottima compatibilità cross browser
Difetti
- assolutamente tra i più prepotenti, potenzialmente in grado di rendere inutilizzabile qualunque altra libreria
- incompatibile, nativamente, con diversi ed utili compressori
- documentazione deludente
- notoriamente soggetto a problemi di memory leak, prepotente quindi anche sul client
- sviluppo troppo lento, tra una versione RC ed una definitiva son passati mesi senza aver apportato modifiche o migliorie degne di nota
Giudizio
Se ha fatto successo significa che in una bilancia virtuale i pregi pesano più dei difetti.
Quanto questo possa essere vero è tutto da dimostrare, poiché ad utilizzarla sono soprattutto gli
sviluppatori meno preparati, solitamente poco attenti a problematiche quali memory leak o intrusione del codice.
Inutile sconsigliare questa libreria poiché essendo molto usata vale la pena almeno testarla o studiarla per capire
come e perché piaccia così tanto o eventualmente come risolvere i problemi causati da questa stessa. Da non preferire ad altre se non dopo aver fatto i giusti confronti.
Buona libreria, non la migliore.
jQuery
Descrizione
Il diretto concorrente di Prototype, molto noto, molto diffuso, ricco di plug-in per ogni tipo di esigenza e soprattutto
molto più pensato a livello di codice.
Impressioni
Tra le prime righe del sito c'è scritto che "scrivere codice JavaScript dovrebbe essere divertente". E sulla scia di questa
dichiarazione viene presentato il primo esempio di utilizzo.
jQuery vanta un sito semplice ma ben articolato, dove tra documentazione, esempi e plug-in ci si può sbizzarrire.
Altro vanto importante è il supporto base di XPath per la ricerca di elementi del DOM.
Basata e caratterizzata anch'essa principalmente dalla funzione dollaro, migliorata rispetto alle rivali, questa libreria è molto meno invadente di Prototype, quasi identica come peso ma compatibile con i compressori più comuni.
Le impressioni iniziali, date da una dimostrazione immediata in home page, sono buone, la libreria sembra essere, invece, ottima.
Pregi
- ottimo codice, robusto e veloce
- leggera nella versione packer (meno di 20Kb)
- facilissima da utilizzare
- ricca di plug-ins per ogni esigenza
- supporto base di XPath
Difetti
- i nomi dei metodi utilizzati non rispettano gli standard
Giudizio
Ebbene sì, l'unico neo, a voler cercare il pelo nell'uovo, è aver scelto in parte la strada di Prototype riguardo i nomi dei metodi.
Sebbene non sia un vero e proprio problema sarebbe più naturale sfruttare nomi e metodi presenti nativamente nei browser più standard ed aggiornati, quali FireFox, Opera o Safari.
Senza entrare in futili dettagli, questa libreria confrontata con Prototype può essere considerata migliore.
Assieme a quest'ultima però stravolge leggermente il modo di scrivere codice.
Certo, scrivere con jQuery è divertente, ma non dovrebbe essere questo il vanto di un framework ed in questo caso, è probabilmente la feature meno interessante.
qooxdoo
Descrizione
Un altro framework basato su componenti grafici della categoria ufficiosa "easier than ever".
Qooxdoo si può inserire tranquillamente nella categoria Enterprise ed è capace di creare veri e propri desktop virtuali.
Impressioni
Sbalorditiva la pagina ShowCase, dove più che un paio di componenti sembra di aver
avviato un programma tramite browser.
Grafica e dettagli curati, funzionalità avanzate e potenzialità impressionanti ma assolutamente inadatto a siti comuni.
Il peso di oltre 800Kb in versione pre-compilata, ovvero compressa, lascia a bocca aperta tanto quanto lo ShowCase poiché
un colosso di questa portata avrebbe potuto sicuramente adottare soluzioni a caricamento dinamico come Dojo ed altri fanno ormai da tempo.
Documentazione eccellente e compatibilità multipla client/server proiettano questo framework in cima alla classifica GUI oriented per applicativi
intranet o di amministrazione.
Pregi
- componenti grafici eccellenti, compatibili e veloci
- l'incredibile lavoro svolto dagli sviluppatori è rigorosamente Open Source
- potenzialità ai vertici della classifica GUI oriented
- compatibilità client / server molto buona
Difetti
- inutilizzabile per siti comuni, pesa oltre gli 800Kb in versione compressa
- le interazioni asincrone sono ottimizzate solo per Java e PHP
Giudizio
Un mostro in grado di mettere a disposizione degli sviluppatori un framework completo, robusto, potente e con
pochi problemi di compatibilità ma tutto questo ha un peso, in questo caso quantificato in più di 800Kb compressi.
Inutilizzabile anche per aree di amministrazione a meno che non si sia certi che l'amministratore abbia una connessione
molto veloce, sicuramente perfetto per applicativi desktop like di una intranet, spettacolare sotto questo aspetto.
Script.aculo.us
Descrizione
Tra gli addetti ai lavori viene soprannominato Protaculous poiché estensione di Prototype con l'aggiunta di
effetti grafici, drag&drop ed altro ancora.
Assieme a Prototype tra le soluzioni più note ed usate, spesso presente di default in framework di linguaggi server.
Impressioni
L'estensione migliore della libreria Prototype, facile da usare e dagli effetti accattivanti in grado di incantare i navigatori meno esperti.
Il peso complessivo si aggira attorno ai 120Kb ma a parità di codice è in grado di offrire una moltitudine di effetti
visuali dall'impatto visivo garantito.
Il solo sito si presenta tramite la stessa libreria. Ma attenzione, se non si possiede un PC potente si rischia di ritrovarsi
il processore surriscaldato, la scheda video in panne e l'inevitabile voglia di premere il tasto per chiudere la finestra potrebbe
anche averla vinta.
Innovativo e divertente il sito, buona la documentazione, buona anche la libreria. Peccato sia lievemente esigente in termini computazionali.
Pregi
- buona documentazione e buon codice, a parità di peso ha parecchio in più da offrire rispetto altri
- ottima compatibilità cross browser
- effetti grafici tra i più accattivanti
- si basa su Prototype, può convivere con altre librerie che si basano su Prototype senza richiedere banda aggiuntiva
Difetti
- si basa su Prototype, rischia di penalizzare altre librerie
- richiede un hardware client aggiornato a prescindere dal browser utilizzato
- soggetto a problemi di memory leak, oltre quelli causati dalla libreria base, Prototype
- troppo pesante nella versione non compressa e non del tutto compatibile con i compressori più noti
Giudizio
Assieme a Prototype tra le accoppiate migliori della lista dalle potenzialità elevate ed Enterprise Ready.
Difficilmente questo framework potrà deludere le aspettative degli sviluppatori ma a quelli più accorti
va ricordato il problema alla base: memory leak ed esigenze in termini di risorse client.
SmartClient
Descrizione
Un altro gigante dichiaratamente adatto ad uno sviluppo enterprise ma rigorosamente a pagamento.
SmartClient racchiude la potenza di JSON, XML e JavaScript in quello che è uno degli ambienti di sviluppo
più estendibili, completi e potenti di tutta la lista.
Impressioni
Ottime, dalla home page alla demo, passando per la documentazione.
SmartClient vanta più di 6 anni di esperienza e potrebbe essere la soluzione ideale per intranet ed applicativi complessi.
Capaci di sviluppare interfacce grafiche Web 2.0 in pochissimi passaggi e con un controllo impressionante.
L'unica pecca degna di nota è la licenza a pagamento, giustificata però dalle caratteristiche avanzate del sistema proposto.
Pregi
- compatibilità cross platform elevatissima
- sviluppo di GUI funzionale, semplice ed estremamente potente
- tra i framework più maturi che ci siano, 6 anni di esperienza e dichiaratamente Enterprise
- ottimo codice, ottimo sito ed altrettanto ottima la documentazione
Difetti
- a pagamento
- tra i più pesanti framework che ci siano
- documentazione complicata e sistema inutilizzabile on-line se non si dispone di una connessione ADSL da almeno 2 Mb
- risorse client sfruttate fino all'ultimo, demo quasi inutilizzabile con sistemi datati
Giudizio
Il fatto che ci sia una versione apposita per una intranet toglie ogni dubbio:
questo framework non è assolutamente adatto per sviluppare siti pubblici.
La richiesta di client potenti e banda da almeno 2Mb danno l'impressione che questo sistema sia
più proiettato nel futuro che nel presente, seppur supporti benissimo anche browser datati.
Progetto mastodontico che non a caso costa centinaia di dollari di licenza. Ne varrà la pena ?
ThyAPI
Descrizione
Un insieme di componenti DHTML riutilizzabili dove Ajax è solo una piccola parte.
Basato su DynAPI questo framework
è orientato soprattutto allo sviluppo di applicativi desktop like.
Impressioni
Il sito è una classica sezione di SourceForge, ma in questo caso privo di documentazione e di informazioni.
Le uniche presenti riguardano i progetti Open Source che adottano questo framework tra i quali
XOOPS, phpMyAdmin ed altri ancora.
Lo sviluppo sembra essersi fermato in Agosto 2005. Preoccupante?
Unico modo per vederlo in azione è scaricarlo, per scoprire che tra i componenti sono presenti fckeditor e jscalendar.
Sommando il peso di qualche file si arriva tranquillamente oltre i 300Kb e qualche cartella
arriva a pesare alcuni mega.
Peccato non poter vedere una demo on-line per capire al meglio le potenzialità, di sicuro
è un framework più adatto ad applicativi come phpMyAdmin che allo sviluppo di siti Web.
Pregi
- adottato da progetti noti, affidabilità e potenzialità elevate
- basato su DynAPI, una libreria contenuta quanto utile
- ricco di componenti desktop like, adatto ad una intranet o per lo sviluppo di applicativi tipo phpMyAdmin
Difetti
- sito privo di informazioni utili o esempi
- peso non contenuto e codice non ottimizzato
- progetto apparentemente abbandonato
Giudizio
Da non considerare affatto almeno fino alla prossima release, se mai verrà pubblicata.
TIBCO
Descrizione
Così maturo da essere stato adottato da servizi governativi dal 2001 ed essere oggi quotato in borsa, TIBCO
rappresenta l'eccellenza in termini di sviluppo visuale di componenti grafiche Ajax e Web 2.0 oriented.
Impressioni
IL framework senza compromessi, basato su un ambiente di sviluppo dedicato, semplice ed intuitivo ma potentissimo.
TIBCO è un abiente visuale di sviluppo dotato di editor WYSIWYG
ricco di dozzine di componenti grafiche curate minuziosamente e funzionalità avanzate quali auto completamento
del codice, componenti vettoriali SVG, interazioni tramite SOAP ed altro ancora.
Per lo sviluppo Enterprise sembra essere la scelta migliore e l'ottimo sito, la documentazione e la comunità
di professionisti che ruota attorno a questo framework non fanno altro che confermare questa impressione.
Pregi
- maturo al punto da essere stato adottato dal governo
- supporto e documentazione ai vertici della classifica
- caratteristiche avanzate
- parco componenti grafiche tra i più vasti
- ide WYSIWYG di sviluppo potente e di semplice utilizzo
- Open Source
Difetti
- pesante per siti pubblici
- non è del tutto gratuito
- non è poi così semplice da utilizzare
Giudizio
Adatto a chi ha maturato molta esperienza e probabilmente scelta obbligatoria per chi sviluppa in ambito Enterprise
e vorrebbe garanzie sul progetto, la manutenzione, l'assistenza e quanto di meglio TIBCO possa offrire.
Un candidato ideale per gli sviluppatori più esperti ed esigenti ma eccessivo per siti comuni.
Per certi versi insuperabile, da confrontare solo con i migliori della lista.
Interactive Website Framework
Descrizione
Un framework per creare siti altamente interattivi tramite JavaScript, CSS ed HTML
con la peculiarità di rendere gli elementi di un documento facilmente navigabili
tramite un parser apposito.
Impressioni
Il progetto si presenta sotto forma di file JavaScript con dipendenze non del tutto chiare
e non ha un sito ufficiale se non quello di SourceForge.
Probabilmente ancora troppo immaturo per essere utilizzato in produzione ma interessante
e per certi versi innovativo per la sua capacità di gestire chiamate asincrone in modo
sicuro e di parsare interi documenti al fine di semplificare modifiche e la lettura di informazioni.
Pregi
- leggero
- innovativo
Difetti
- scarsa documentazione
- progetto non ancora maturo
- peso contenuto ma non ha molto da offrire
Giudizio
Per ora negativo ma si consiglia di tenere d'occhio il progetto in quanto interessante, non invadente ed insolito rispetto la concorrenza.
UI4W
Descrizione
User Interface For the Web è un'implementazione del framework MochiKit orientato alle componenti grafiche.
Impressioni
Il sito è da navigare con la lente di ingrandimento, almeno in FireFox 1.0, e non si capisce se la colpa
sia dell'effetto molla in entrata o della grandezza scelta per il carattere.
La libreria non è affatto leggera e graficamente abbastanza discutibile.
Gli esempi sembrano funzionare discretamente ma non hanno caratteristiche degne di nota.
Pregi
- basato su MochiKit, ottimo framework di sviluppo
- semplice da utilizzare
Difetti
- rapporto qualità /peso e risultato deludenti
- compatibile al meglio solo con browser moderni
Giudizio
Un'estensione non troppo riuscita che avrebbe potuto dare qualcosa in più, data la base di sviluppo scelta.
Un'occhiata alle demo sarà sufficiente per capire quali sono le componenti grafiche interattive disponibili
e come rendono graficamente.
Abbastanza deludente, si spera in un futuro più competitivo.
YUI
Descrizione
Yahoo! User Interface Library è tra i più completi framework di sviluppo orientati
alle componenti grafiche e capace di implementare ottima interazione in qualunque pagina Web.
Impressioni
Gratuito, ottimizzato, curato al dettaglio, potente. Decisamente da escalamazione: Yahoo!
Quando un big di queste dimensioni propone una soluzione non lo fa di certo timidamente.
Interfacce accantivanti, innovative ed una documentazione ricca di eccellenti esempi
rendono questo framework adatto ad uno sviluppo Enterprise sebbene la semplicità
di utilizzo sia alla portata di tutti, compresi i non sviluppatori.
Pregi
- quantità di GUI impressionante
- gratuito ed Open Source
- estremamente facile e potente
- supporto client eccellente e si interfaccia con qualunque linguaggio server
- sviluppo, manutenzione e qualità garantite da un gruppo di tutto rispetto, quello Yahoo!
Difetti
- troppo pesante
Giudizio
Una delle critiche più frequenti è proprio sulle dimensioni di questa libreria, mastodontiche!
L'abuso è compreso nel pacchetto, troppe le pagine che richiedono un download di centinaia di Kbytes per
mostrare magari un solo e piccolo spazio multi tab.
Certo questo piccolo difetto di forma non è direttamente attribuibile al framework quanto ai suoi sviluppatori.
Usare con parsimonia ma almeno una prova è rigorosamente consigliata: c'è veramente di tutto
e tutto quello che c'è funziona a meraviglia, eccellente, Enterprise, gratuito, serve altro?
WinLIKE
Descrizione
Il nome scelto spiega bene cosa possa fare questo framework capace di creare un vero e proprio ambiente desktop.
Funzionale, graficamente ben fatto, compatibile ed innovativo.
Impressioni
Basta entrare nel sito per accorgersi delle caratteristiche messe a disposizione dal framework.
La cosa più interessante è il peso complessivo della libreria, irrisorio se paragonato ad altre
in grado di produrre lo stesso risultato.
Gratuito e sicuramente unico nel suo genere, l'impressione è sicuramente ottima.
Pregi
- ottimo rapporto peso/potenzialità
- facile da utilizzare
- compatibile con molti browser ed indipendente dal linguaggio server adottato
Difetti
- potenzialità interessanti ma limitate oltre la sola rappresentazione simil Desktop
- più che Web 2.0 ed Ajax è un iframe oriented
- stravolge il normale flusso dati di una pagina e non è facilmente implementabile su progetti esistenti
Giudizio
Ottimo per l'insieme di caratteristiche quali leggerezza ed originalità, ottimo il supporto per i browser.
Quello che delude è la reale utilità di questo framework che sorprende e annoia allo stesso tempo.
Sicuramente divertente e probabilmente tra i più facili da utilizzare ma sembra essere
concettualmente arretrato rispetto l'era Web 2.0... più che un framework, un esperimento ben riuscito.
Zimbra AjaxTK
Descrizione
L'ultimo della lista, ma non per le caratteristiche.
Zimbra più che un framework è un ambiente di sviluppo, collaborazione, gestione mail virtuale basato sullo scambio dati asincrono.
Una suite completa dove la punta di diamante è rappresentata dall'Ajax email client.
Impressioni
Molto bello il sito e molto professionale il prodotto.
Questa piattaforma cross browser sembra promettere tanto ma non è troppo utile per sviluppare proprie interfacce Web.
L'utilizzo esclusivo come client engine sembra essere infatti l'unica vera peculiarità di casa Zimbra
ed il peso di tutta la libreria, capace di drag&drop su widget graficamente curati e tecnicamente
funzionali, non è certo contenuto. Del resto, avrebbe stupito oltremodo il contrario.
Pregi
- applicativo robusto, veloce affidabile
- Open Source
- compatibile con la maggior parte dei browsers in circolazione
Difetti
- pesante
- non è un framework di sviluppo ma un vero e proprio applicativo
Giudizio
Ottimo risultato e minimo sforzo per chi vorrà adottare questa soluzione come client email.
Non rientra a pieno nella categoria dei framework per sviluppare
ma può mostrare egregiamente quanto sia possibile fare tramite JavaScript ed Ajax,
da prendere come esempio, l'uso è invece più che facoltativo.
Conclusione
Sono presenti i più noti ma non sono presenti tutti.
Esistono tante altre varianti per sviluppare componenti grafici, interi applicativi o sfruttare Ajax, JSON, SOAP.
Provarli tutti potrebbe risultare dispendioso ma se si è alla ricerca di un framework
perché non si ha tempo o capacità di crearne uno proprio la lista dei candidati si ristringe.
Molte di queste librerie sono parte integrante di framework lato server disponibili per la maggiorparte
dei linguaggi più noti.
Qualcuno, probabilmente esperto, ha già deciso quale sia la libreria migliore per sviluppare rapidamente
con PHP, C#, Java o Python ed il consiglio è di analizzare il perché sia stata scelta una piuttosto che un'altra.
L'importante è selezionare il giusto compromesso qualità, peso, compatibilità e potenzialità... e questo, purtroppo, non è affatto facile!