2009-12-18 17 views
6

He estado usando la biblioteca de YUI para desarrollar sitios web. YUI 3 salió en septiembre.Convencerme de cambiar de YUI 2 a YUI 3

Todavía no estoy convencido de si tengo que prepararme para una migración.

¿Cuáles son las ventajas de la 3ra versión sobre la 2da?

¿Ha estado involucrado en una migración de este tipo, últimamente?

+0

¿Consideraría cambiar de YUI 2 a ExtJS 3? – Upperstage

+0

En realidad, no parece ser muy "skinnable" ... Pero no tengo suficiente conocimiento de ello ... – Arno

Respuesta

6

No he estado involucrado en una migración, pero he contribuido a la galería YUI 3, y también sé que hay una entrada en la galería que permite que cualquier clase de YUI 2 se use en YUI 3. Creo que la principal La ventaja de YUI 3 es la capacidad de cargar lo que desee a pedido. Incluyes 1 archivo javascript, y luego usarías la siguiente línea para usar los módulos en yui que quieras.

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

La ventaja de esto es que proporciona el módulo DOM, y lo pone a disposición SÓLO en el ámbito de esa función. Esto es bueno porque solo carga los módulos que desea en un ámbito específico. Esto evitará conflictos con otros marcos JS si los usa.

Si desea añadir su módulo personalizado que haría algo como esto

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

Eso agregará su módulo, y registrar las dependencias, por lo que a continuación se puede usar diciendo

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

Supongo que por lo que puedo ver, las principales ventajas son un marco más seguro y portátil. Puede hacer que los módulos YUI 3 estén disponibles SÓLO dentro de un alcance de función determinado. Esto libera el alcance principal de la página para otras cosas si lo desea. También es más seguro, la definición de sus funciones se encuentra en un ámbito privado, por lo que no tienen ningún gancho variable global para ser explotado por inyección de script o qué no.

+0

Gracias por su respuesta, parece bastante completo ... – Arno

+0

No hay problema, buena suerte con su migración (si elige hacerlo) – Zoidberg

4

Arno - aquí está mi respuesta:

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

Aquí es la respuesta de Lucas:

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

Ah, y la respuesta de Todd (también fantástico):

(incluso mejor!)

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

YUI 3 es un gran paso adelante para nosotros: estamos muy entusiasmados con la arquitectura básica, y lo que estamos escuchando de las personas que están haciendo la migración es que les encanta la experiencia de YUI 3. Necesitamos que los widgets continúen 3, pero estamos trabajando en eso (ver http://developer.yahoo.com/yui/theater/video.php?v=desai-yuiconf2009-widgets).

No soy ni remotamente objetivo, pero escucho cosas buenas de aquellos que sí lo son.

-Eric

+0

Acerca de los widgets que necesita para continuar 3 - cuidado para elaborar? –

+1

Todos los widgets principales (DataTable, Rich Text Editor, Autocompletar, Button, Slider, TabView, Calendar, etc.) deben tener las implementaciones de YUI 3 adecuadas que se prueban con cada versión, además de lo que se contribuya a la Galería. –

3

No es necesario migrar. Puede comenzar a usar YUI 3 junto con YUI 2, y le recomiendo hacerlo.

Estoy muy impresionado con las ideas y la arquitectura detrás de YUI 3.Por ejemplo, cómo YUI 3 normaliza el manejo de nodos y eventos y cómo los eventos personalizados se manejan como eventos nativos.

La modularidad de la biblioteca no solo hace que sea más fácil de usar, sino que también promueve la escritura de más códigos modulares, lo cual es una buena idea.

Eche un vistazo al video de presentación de Eric y a todos los otros videos de YUI 3 en el YUI Theater para ver más motivos para realizar el cambio.