¿Cuándo recomienda actualizar jQuery / jQuery UI? O en otras palabras: ¿cuáles son las mejores prácticas para actualizar jQuery / jQuery UI?
Estoy trabajando en un proyecto largo que tomará al menos un año más. En ese lapso de tiempo, estoy seguro de que jQuery / jQuery UI se actualizará muchas veces.
¿Recomienda actualizar mis archivos jQuery / jQuery UI cada vez que se publique una actualización? ¿O es mejor seguir con una versión particular hasta el final del proyecto?
Tengo miedo de "romper" los cambios de código, y cada vez que se lanza una actualización, tengo que probar todo. Eso lleva demasiado tiempo. Pero, por otro lado, si no actualizo, tengo miedo de los errores que luego me morderán en la parte trasera.
El proyecto es un ASP.MVC y uso mucho jQuery.
¿Alguna idea?
fuente
Respuestas:
Actualice su versión de jQuery si y solo si necesita alguna característica nueva que se incluye en la nueva versión. Simple como eso.
Si desarrolla con frecuencia usando jQuery, esté atento al blog oficial para saber cuándo se lanzan las actualizaciones y qué ofrecen. Espere un par de semanas antes de actualizar a la última versión para asegurarse de que cualquier error inesperado sea eliminado.
fuente
Debería actualizar con cada versión de jQuery, solo eche un vistazo a los registros de actualización antes de actualizar.
El equipo de jQuery es muy bueno para documentar cambios de API y llamadas en desuso . En este punto, la gran mayoría de la API es bastante estable y probablemente no cambiará. La mayoría de los cambios son correcciones de errores detrás de escena que no afectan la API externa. Esto es especialmente cierto con los últimos lanzamientos (1.8+).
Otra gran razón para actualizar es porque, independientemente de si permanece en un proyecto o no, ese proyecto será mantenido por alguien después de que haya terminado con él. La actualización a la última versión es beneficiosa para usted, futuros desarrolladores y usuarios, porque las versiones más nuevas de jQuery eliminan a las más antiguas del agua ... así que continúe y actualice el thang.
fuente
Actualice lo antes posible sin romper nada. Nuevas funcionalidades, corrección de errores, nuevas características se introducen en cada iteración.
Es posible que no necesite las últimas funciones, pero cuando lo haga, deberá validar cada nueva versión entre lo que tiene para asegurarse de que no rompa nada.
Un pequeño incremento le permitirá mantener todo actualizado sin tener que actualizar 5 versiones principales y pasar 5 horas probando todo a la vez.
fuente
¿Necesita alguna de las nuevas funciones incluidas en una versión más nueva de JQuery? ¿Su sitio funciona como se espera hoy?
Si respondió "no" a la primera y "sí" a la segunda pregunta, no actualice jQuery.
Si necesita una nueva funcionalidad, debe equilibrar esto con el costo del aumento de las pruebas y la posible introducción de nuevos problemas.
Si tiene problemas con su versión actual de JQuery, entonces una versión más nueva puede haber solucionado su problema, pero aún tiene una mayor carga de prueba porque debe asegurarse de que la nueva versión no rompa nada más.
Es por eso que es tan esencial contar con un buen conjunto de pruebas unitarias, funcionales y de características.
fuente
Solo usted puede decidir si los riesgos valen la pena. Personalmente, me gusta estar al día. Sin embargo, he introducido algunos errores al actualizar que rompieron algo (o causaron un comportamiento extraño). Como tiene un año de desarrollo por delante, es probable que tenga que pasar por un control de calidad final de todos modos.
Yo digo mantenerse al día. Es mucho más fácil hacer integraciones pequeñas continuas que grandes a la vez.
fuente
Prueba. Prueba, prueba, prueba, prueba, prueba.
Utilicé la versión de jQuery UI (luego actual) en un proyecto, y utilicé un complemento externo llamado .autocomplete que hizo la funcionalidad de escritura anticipada, vinculando un campo de texto a una fuente de datos JSON. Lo usé MUCHOS lugares.
Luego, meses después, necesitaba agregar un control deslizante que solo venía en una versión posterior. Desafortunadamente, esa versión actual agregó una función de autocompletar nativa , que según ellos era el sucesor espiritual del complemento que había usado, pero que usaba una metodología, funciones y requisitos de datos completamente diferentes, rompiendo los campos de autocompletar en cada página que usé mi nuevo control deslizante en.
Debido a que las páginas en las que estaba desarrollando esta nueva característica no usaban autocompletar, no me di cuenta. Debido a que mi cliente tenía prisa por presentar esta función antes de una feria comercial, se apresuró a través de la puesta en escena y las pruebas, y entró en producción con un crapton de autocompletas rotas.
Finalmente, fue un fracaso de MIS pruebas. Y la lección aprendida es que jQuery y jQuery UI tienen muy poco interés en la compatibilidad con versiones anteriores. Lo que nos exige, como desarrolladores, probar y probar y probar.
fuente
En mi experiencia, las nuevas versiones de jQuery son generalmente más rigurosas en sus requisitos de limpieza del código con respecto al código de llamada (su código).
Hay numerosos elementos que han quedado en desuso ( http://api.jquery.com/category/deprecated/ ). Desafortunadamente, no hay una etiqueta obsoleta en la página. Las desvalorizaciones antiguas tienen más probabilidades de romper algo
Lo más notable (para mí), el
:checkbox
selector y latoggle()
función han quedado en desuso. Hace algún tiempo, este cambio ha afectado mi propio código jquery (el más antiguo). No me di cuenta por un tiempo.Por otro lado, las nuevas versiones de jQuery generalmente vienen con mejoras sustanciales de rendimiento. Consulte los registros de cambios, o tal vez una de las presentaciones de John Resig para ver dónde se realizaron las mejoras de rendimiento. Si obtendrías algún beneficio de ellos ... eso depende de ti decidir.
fuente