2009-12-18 17 views
6

Ho utilizzato la libreria YUI per sviluppare siti Web. YUI 3 è uscito a settembre.Convinci a passare da YUI 2 a YUI 3

Non sono ancora convinto se devo prepararmi per una migrazione.

Quali sono i vantaggi della 3 ° versione rispetto al 2 °?

Sei stato coinvolto in una tale migrazione, ultimamente?

+0

Prenderesti in considerazione il passaggio da YUI 2 a ExtJS 3? – Upperstage

+0

In realtà, non sembra molto "personalizzabile" ... Ma non ne ho abbastanza di conoscenza ... – Arno

risposta

6

Non sono stato coinvolto in una migrazione, ma ho contribuito alla galleria YUI 3 e so anche che esiste una voce della galleria che consente a qualsiasi classe di YUI 2 di essere utilizzata in YUI 3. Suppongo che la principale il vantaggio di YUI 3 è la possibilità di caricare ciò che si desidera su richiesta. Si include 1 file javascript e quindi si utilizzerà la seguente riga per utilizzare qualsiasi modulo in yui desiderato.

YUI().use('dom',function(){ 
// your code here 
}); 

Il vantaggio di questo è il modulo DOM e rende SOLO disponibile nell'ambito di tale funzione. Questo è buono perché carica solo i moduli che desideri in un ambito specifico. Ciò impedirà gli scontri con qualsiasi altro framework JS se li usi.

Se vuoi aggiungere la tua modulo personalizzato si dovrebbe fare qualcosa di simile

YUI().add('mycustompackage',function(Y){ 
    MyCustom.package.SomeClass = function(){} 
    MyCustom.package.SomeClass.prototype = {} 
},'1.0.0',{requires:['base','dom','event'],use:['node']}); 

che aggiungerà il modulo, e registrare le dipendenze, in modo quindi è possibile utilizzarlo dicendo

YUI().use('mycustompackage',function(){ 
// code goes here 
}); 

Immagino da quello che posso vedere, i principali vantaggi sono una struttura più sicura e portatile. È possibile rendere SOLO i moduli YUI 3 disponibili nell'ambito di una determinata funzione. Si libera lo scopo principale della pagina per altre cose se lo si desidera. È anche più sicuro, la definizione delle tue funzioni è in un ambito privato, quindi non hanno ganci a variabili globali da sfruttare tramite l'iniezione di script o cosa no.

+0

Grazie per la tua risposta, sembra abbastanza completo ... – Arno

+0

Nessun problema, buona fortuna con la tua migrazione (se scegli di farlo) – Zoidberg

4

Arno - ecco la mia risposta:

http://developer.yahoo.com/yui/theater/video.php?v=miraglia-yuiconf2009-yui3

Ecco la risposta di Luca:

http://developer.yahoo.com/yui/theater/video.php?v=smith-yuiconf2009-events

Oh, e la risposta di Todd (anche fantastico):

(ancora meglio!)

http://developer.yahoo.com/yui/theater/video.php?v=kloots-yuiconf2009-sugar

YUI 3 è un grande passo avanti per noi: siamo davvero entusiasti dell'architettura di base e ciò che sentiamo dalle persone che stanno facendo la migrazione è che amano l'esperienza YUI 3. Dobbiamo far funzionare i widget 3, ma ci stiamo lavorando (vedere http://developer.yahoo.com/yui/theater/video.php?v=desai-yuiconf2009-widgets).

Io non sono lontanamente obiettivo, ma ho sentito cose buone da quelli che sono.

-Eric

+0

Informazioni su quei widget su cui devi andare avanti 3 - cura di elaborare? –

+1

Tutti i principali widget - DataTable, Rich Text Editor, Completamento automatico, Pulsante, Slider, TabView, Calendario, ecc. - devono disporre di implementazioni YUI 3 corrette che vengono testate con ogni versione, oltre a tutto ciò che viene Galleria. –

3

Non è necessario eseguire la migrazione. Puoi iniziare a utilizzare YUI 3 lungo il lato YUI 2, e ti incoraggio a farlo.

Sono molto impressionato dalle idee e dall'architettura di YUI 3.Ad esempio, come YUI 3 normalizza il nodo e la gestione degli eventi e come vengono gestiti gli eventi personalizzati come eventi nativi.

La modularità della libreria non solo semplifica l'utilizzo ma promuove la scrittura di codice più modulare da soli, il che è positivo.

Dai un'occhiata al video introduttivo di Eric e tutti gli altri video di YUI 3 allo YUI Theater per vedere altri motivi per effettuare il passaggio.