He comenzado una nueva aplicación web y he decidido utilizar jquery como mi biblioteca principal de JavaScript ... Pero aun así quiero obtener algunos consejos de pros y contras de los usuarios de SO que usaron jquery ...¿Cuáles son los pros y los contras al elegir jquery como mi biblioteca principal de JavaScript?
Respuesta
de Pro
- Elimina una gran cantidad de navegadores Javascript emite
- puede llevar a cabo operaciones de Javascript complicados en poco código
- puede agregar fácilmente funcionalidad Ajax para APP
- ha construido en las bibliotecas de interfaz de usuario y efectos
Con's
- de arriba de la adición de JavaScript adicional a la página
- curva de aprendizaje puede no ser corto para algunos desarrolladores
Todos los profesionales, sin contras
Lo único que se aplicará será la sobrecarga del tiempo de ejecución que jQuery agrega para cargar sus archivos y ejecutar sus funciones, pero en comparación con el Pro de codificación de JavaScript compatible con el navegador no es nada.
También en comparación con otras bibliotecas JavaScript jQuery es una de las más rápidas y pequeñas. Su comunidad es enorme y puedes encontrar fácilmente soporte y buena documentación.
Cualquier persona que considera el uso de una biblioteca de propósito general como jQuery debe pensar con cuidado y ser conscientes de los problemas (como la no despreciable uno de incluir 70K de JavaScript en cada página) antes de elegir a usarlo, así que creo que diciendo que no son sin inconvenientes no es útil. –
La versión de producción es 24KB – yassin
Como Yassin dijo que jquery gzipped y minified es de 24 kb. También mencioné que jquery viene con la ligera inconveniencia de algunas cosas extra para descargar y ejecutar, pero en comparación con los beneficios es insignificante. –
Has hecho una buena elección, no te preocupes. jQuery es una biblioteca muy bien diseñada: es potente, limpia, bien documentada y extremadamente popular. Aprende bien, y será una poderosa herramienta en tu arsenal.
Dicho esto, creo que para ser realmente consciente de sus ventajas y desventajas frente a otros marcos, primero debe aprenderlo bien. Solo una comprensión más profunda de una herramienta le permite una comparación real con otras herramientas.
La única desventaja que se me ocurre es el ocasional memory leaks. Es un gran marco además de javascript y no es restrictivo.
Dicho esto, jQuery UI es terrible para mi gusto y si su aplicación requiere una interfaz de usuario altamente interactiva, intente Ext JS.
Pros:
- grande comunidad
- útil para seleccionar y iterar sobre conjuntos de DOM nodos
- elimina algunas inconsistencias entre navegadores
- hace que sea fácil para los desarrolladores de JavaScript inexpertos hacer scripting relativamente complejo tareas
Contras:
actualizaciones- regulares que cambian el comportamiento existente
- Algunos métodos de la API fundamentales confusas (por ejemplo,Método
attr()
: ¿qué exactamente hace? Ciertamente difumina la línea entre los atributos y propiedades) - Alienta "encadenamiento", lo que conduce a código que es difícil de depurar: en una larga cadena de llamadas a métodos de jQuery, no hay ningún lugar para poner las declaraciones de registro, por lo que necesita una completa el depurador
- breve lista de los navegadores compatibles
- un punto general acerca de las bibliotecas de propósito general: que animar a los desarrolladores a no intentar comprender los problemas subyacentes que las bibliotecas tratan de resolver, lo que lleva a una tendencia a pensar en la biblioteca como mágico y utilizarlo para absolutamente todo
- añade 70K de JavaScript para todas las páginas donde se utiliza cuando menudo unos pocos bytes de código jQuery no harían
- El rendimiento es generalmente mucho más lento que el equivalente (bien pensado a través de) la no jQuery código
- Calidad de plug-ins es muy variable de
Puedo ver una gran cantidad de parcialidad aquí. Parece que te has perdido algunos pros ... Por cierto, son 19k con min + gzip. El encadenamiento no es intrínsecamente un problema: tus experiencias pueden decir lo contrario, pero no puedes simplemente hacer una afirmación plana como esa y esperar que retenga el agua. – James
Además, es una locura tomar un método ("attr") y luego decir que toda la API está "confundida" ... Creo que muchos de tus puntos requieren confirmación. – James
J-P: Como estoy seguro de que se da cuenta, no estaba contando gzip en el tamaño de la biblioteca, ya que no siempre es así. Además, el tamaño sin gzip es más relevante cuando se considera el trabajo que el intérprete de JavaScript necesita hacer. Con respecto a tus otros puntos, voy a dar forma a mi respuesta en breve. ¿Qué profesionales crees que me estoy perdiendo? Estoy abierto a la idea de que no he pensado en algunos. –
Los pros y los contras son realmente en relación con lo que su nueva web aplicación estará haciendo. Si va a ser JavaScript/Ajax-rich y requiere compatibilidad con varios navegadores, entonces jQuery es el camino a seguir, sin duda. Sin embargo, si solo vas a usar JavaScript muy poco, puede que sea demasiado para incluir un marco de gran tamaño, y sería más eficiente (en términos de rendimiento y tamaño de página) codificar el JavaScript directamente.
Hay otras bibliotecas JS. Si va a ser muy rico, es probable que uno que se enfoque en proporcionar widgets (como ExtJS) sea mejor. – Quentin
¿Por qué se ha votado negativamente? ¿Qué en su respuesta es incorrecto? – James
"rico" no es solo un sinónimo de "muchos widgets" (aunque jQuery tiene muchos de estos widgets, incluida jQuery UI). jQuery es un marco de programación flexible, no solo un conjunto de controles y temas bonitos (tan útiles como estos últimos). –
Pros: Ligero, fácil de usar, una buena documentación, se deshace de casi todos los problemas entre exploradores y normaliza el modelo de eventos.
Contras: jQuery UI no tiene mucho que ofrecer, y los plugins son impredecible.
Si estás haciendo una aplicación rica de Internet muy JavaScript-pesada, ir con YUI o ExtJS. jQuery es una excelente biblioteca de manipulación de DOM, y es lo mejor para el trabajo de IU altamente personalizado. Pero si necesita una gran cantidad de UI estándar y un sólido sistema de administración de datos detrás de ella, necesita un marco más amplio para unir todo.
- 1. ¿Cuáles son los pros y los contras de Solr & ElasticSearch?
- 2. ¿Cuáles son los pros y los contras de la UCI?
- 3. Objeto de solicitud, ¿cuáles son los pros y los contras?
- 4. ¿Cuáles son los pros y los contras de usar Global.asax?
- 5. ¿Cuáles son los pros y los contras de TreeSet
- 6. ¿Cuáles son los pros y los contras de los submódulos de git y Repo?
- 7. ¿Cuáles son los pros y los contras de usar un correo electrónico como nombre de usuario?
- 8. ¿Cuáles son los pros y los contras de usar una plantilla de motor como Jade?
- 9. ¿Cuáles son los pros y los contras de dejar que Google aloje jQuery para mí?
- 10. ¿Cuáles son los pros/contras de 64 bit .NET?
- 11. ¿Cuáles son los pros y los contras de LinkedHashMaps vs. LinkedHashSets?
- 12. JQuery UI: Pros y contras?
- 13. Cuándo usar actores en libgdx? ¿Cuáles son los contras y los pros?
- 14. ¿Cuáles son los pros y los contras de los procedimientos de llamada en VB.NET?
- 15. ¿Cuáles son los pros y los contras de un sitio 100% HTTPS?
- 16. ¿Cuáles son los pros y los contras de usar una enumeración de banderas?
- 17. ¿Cuáles son los pros y los contras de la entrada delimitada general de Ruby? (sintaxis porcentual)
- 18. ¿Cuáles son los pros y los contras de usar git-svn?
- 19. ¿Cuáles son los pros y los contras de la eliminación y las actualizaciones en cascada?
- 20. ¿Cuáles son los pros y los contras de asset_packager y Jammit?
- 21. ¿Cuáles son los pros y los contras de usar configChanges = "orientation" para dispositivos Android?
- 22. ¿Cuáles son los pros y los contras de fs.createReadStream vs fs.readFile en node.js?
- 23. ¿Cuáles son los pros y los contras de las bases de datos de objetos?
- 24. ¿Cuáles son los pros y los contras de usar una DLL?
- 25. ¿Cuáles son los pros y los contras de usar una Mac para el desarrollo web?
- 26. ¿Cuáles son los pros y los contras de HTML5 Canvas vs. SVG + Raphael.js?
- 27. ¿Cuáles son los pros y los contras de la autentificación HTTP básica
- 28. ¿Cuáles son los pros y los contras de ejecutar un trabajo en Hadoop usando varios idiomas?
- 29. ¿Cuáles son los pros y los contras de almacenar archivos en una base de datos?
- 30. ¿Cuáles son los pros y los contras de las revisiones de diseño/código?
Diría que la curva de aprendizaje jQuery es la más corta en comparación con todas las otras bibliotecas JS. Una de las razones de la popularidad de jQuery. –
@Ivo: Estoy de acuerdo. Pero al mismo tiempo, tal vez para abreviar. jQuery ciertamente ayuda mucho, pero puede dificultar que los desarrolladores aprendan verdadero javascript. – fredrik
"Se pueden realizar complicadas operaciones de Javascript en un código pequeño" - no del todo cierto. Un pequeño código para "usted" para escribir, pero la cantidad total de código para realizar una determinada acción a menudo está en el lado pesado. – fredrik