Ventajas y desventajas de varios marcos front-end, preguntas avanzadas de la entrevista de Java

10. Separación de la capa de comportamiento y la capa de estructura: los desarrolladores pueden usar selectores para seleccionar elementos y luego agregar eventos directamente a los elementos. Esta idea de separar completamente la capa de comportamiento de la capa estructural puede permitir que los desarrolladores de JQuery y HTML u otros desarrolladores de páginas realicen sus funciones y se deshagan de los conflictos de desarrollo anteriores o de los modelos de desarrollo individuales. Al mismo tiempo, el mantenimiento posterior también es muy conveniente y no es necesario encontrar ciertas funciones en el código HTML y modificar repetidamente el código HTML.

11. Amplia compatibilidad con complementos: la fácil escalabilidad de JQuery ha atraído a desarrolladores de todo el mundo para escribir complementos de extensión de JQuery. En la actualidad, hay más de cientos de soporte oficial de complementos, y constantemente hay nuevas entrevistas de complementos.

12. Documentación perfecta: la documentación de JQuery es muy rica, como la API china de JQuery.

13. Código abierto: JQuery es un producto de código abierto, cualquiera puede usarlo libremente y hacer sugerencias para modificarlo.

defecto:

1. Sin compatibilidad con versiones anteriores: cada nueva versión no es compatible con versiones anteriores. Por ejemplo, algunas versiones nuevas ya no admiten ciertos selectores, pero la nueva versión de jQuery no conserva la compatibilidad con ellos, sino que simplemente los elimina. Esto puede afectar el código o los complementos que el desarrollador ya ha escrito.

2. Compatibilidad de complementos: similar al punto anterior, cuando se lanza una nueva versión de jQuery, si el desarrollador desea actualizar, depende de si el autor del complemento lo admite. En general, es posible que los complementos existentes no funcionen correctamente con las últimas versiones de jQuery. Cuantos más complementos use un desarrollador, mayores serán las posibilidades de que esto suceda. Una vez tuve que modificar un complemento de terceros para actualizar a jQuery 1.3.

3. Conflictos de complementos múltiples: cuando se usan complementos múltiples en la misma página, es fácil encontrar conflictos, especialmente cuando estos complementos se basan en el mismo evento o selector. Aunque esto no es un problema con jQuery en sí mismo, de hecho es un problema que es difícil de depurar y resolver.

4. La estabilidad de jQuery: jQuery no bloqueó el navegador, lo que se refiere a su estrategia de lanzamiento de versión. Solo unos días después del lanzamiento de la versión 1.3 de jQuery, se lanzó una corrección de errores en la versión 1.3.1. También eliminaron el soporte para algunas funciones, lo que puede afectar el funcionamiento normal de muchos códigos.

5. Soporte deficiente para animación y efectos especiales: en marcos grandes, la base de código central de jQuery tiene un soporte relativamente bajo para animación y efectos especiales. Pero en realidad esto no es un problema. Actualmente hay un proyecto jQuery UI separado y numerosos complementos para compensar esto.

Dos, Zepto

================================================== ===================

Zepto fue originalmente una librería desarrollada para el terminal móvil, es una alternativa liviana a jQuery porque su API es similar a jQuery y el tamaño del archivo es más pequeño. La mayor ventaja de Zepto es su tamaño de archivo, que es de solo más de 8k, que es el más pequeño de la biblioteca actual con funciones completas, aunque no es grande, las herramientas proporcionadas por Zepto son suficientes para satisfacer las necesidades del desarrollo. programa. En pocas palabras, jquery se usa para el desarrollo del lado de la computadora y Zepto se usa para el desarrollo del lado móvil.

Ventajas: ligero, adecuado para el desarrollo móvil

Contras: Zepto no es compatible con versiones anteriores de los navegadores Internet Explorer (<10).

3. VueJS

================================================== ===================

De hecho, Vue.js no es un marco, porque solo se enfoca en la capa de vista y es una biblioteca para construir interfaces web basadas en datos.

Vue.js proporciona un enlace de datos eficiente y un sistema de componentes flexible a través de una API (interfaz de programación de aplicaciones) simple.

Las características de Vue.js son las siguientes:

1. Marco ligero

2. Enlace de datos bidireccional

3. Instrucciones

4. Complemento

ventaja:

  1. Simple: La documentación oficial es muy clara, más fácil de aprender que Angular.

  2. Rápido: actualice el DOM en modo por lotes asíncrono.

  3. Composición: componga su aplicación con componentes desacoplados y reutilizables.

  4. Compacto: ~18kb min+gzip, y sin dependencias.

  5. Potente: expresiones y propiedades calculadas sin declarar dependencias.

  6. Amigable con los módulos: se puede instalar a través de NPM, Bower o Duo, lo que no obliga a todo su código a seguir las diversas regulaciones de Angular, y los escenarios de uso son más flexibles.

defecto:

  1. Recién nacido: Vue.js es un proyecto nuevo, no tan maduro como angular.

  2. La influencia no es muy grande: después de Google, hay una diversidad o riqueza de Vue.js que es menor que algunas otras bibliotecas famosas.

  3. IE8 no es compatible:

4. AngularJS

============================

"Análisis de las preguntas de la entrevista de Java en fabricantes de primera línea + notas de estudio de desarrollo de back-end + video de explicación de arquitectura más reciente + folletos de código fuente del proyecto real"

[docs.qq.com/doc/DSmxTbFJ1cmN1R2dB] Uso compartido de código abierto de contenido completo

=============================================

angularJS es un marco JS de front-end excelente que se ha utilizado en muchos productos de Google.

Las características de angularJS son las siguientes:

1. Buena estructura de la aplicación

2. Enlace de datos bidireccional

3. Instrucciones

4. Plantilla HTML

5. Integrable, inyectable y comprobable

ventaja:

1 La plantilla es poderosa y rica, y viene con instrucciones angulares extremadamente ricas.

2. Es un marco de front-end relativamente completo, que incluye servicios, plantillas, enlace bidireccional de datos, modularización, enrutamiento, filtros, inyección de dependencia y otras funciones;

3. Instrucciones personalizadas, que se pueden usar varias veces en el proyecto después de personalizar las instrucciones.

4. La modularidad de ng presenta audazmente algunas cosas de Java (inyección de dependencia) y puede escribir fácilmente código reutilizable, lo cual es muy útil para los equipos de desarrollo ágiles.

5. Angularjs es desarrollado por el gigante de Internet Google, lo que también significa que tiene una base sólida y el apoyo de la comunidad.

defecto:

1. Es fácil comenzar con angular, pero hay muchos conceptos después de un estudio en profundidad, que es difícil de entender durante el aprendizaje.

2. Hay muy pocos ejemplos de documentación, la documentación oficial básicamente solo escribe api, sin un solo ejemplo, en muchos casos, cómo usarlo es de Google, o directamente pregunta a misko, el autor de angular.

3. La compatibilidad con IE6/7 no es particularmente buena, pero puede usar jQuery para resolver algunos problemas escribiendo a mano su propio código.

4. Hay pocos tutoriales de mejores prácticas para la aplicación de directivas. Angular es realmente muy flexible. Si no lee algunos principios de uso del autor, es fácil escribir códigos diferentes. Por ejemplo, jQuery todavía tiene muchas operaciones dom en js.

5. Inyección de dependencia DI Si la compresión del código necesita mostrar la declaración

6. El mecanismo de enrutamiento de AngularJS es propenso a problemas

7. La visualización del mensaje de error de la función de verificación es relativamente débil y es necesario escribir muchas etiquetas de plantilla

8. Solo puede haber un ngView y no se pueden anidar varias vistas. Aunque existen soluciones angular-ui/ui-router, ui-router no es muy flexible para controlar las URL y debe anidarse.

9. Esta actualización de 1.0.X a 1.2.X parece tener un ajuste relativamente grande y no es perfectamente compatible con versiones anteriores.Después de la actualización, puede causar un error de compatibilidad.

5. ReaccionarJS

================================================== =====================

React se usa principalmente para construir UI. Puede pasar varios tipos de parámetros en React, como código declarativo para ayudarlo a representar la interfaz de usuario, elementos DOM HTML estáticos, variables dinámicas o incluso componentes de aplicaciones interactivas.

Las características de reacción son las siguientes:

1. Diseño declarativo: React adopta el paradigma declarativo, que puede describir fácilmente la aplicación.

2. Eficiente: React minimiza la interacción con DOM al simular DOM.

3. Flexible: React funciona bien con bibliotecas o marcos conocidos.

Ventajas: 1. Alta velocidad: durante el proceso de representación de la interfaz de usuario, React implementa actualizaciones parciales del DOM real a través de microoperaciones en el DOM virtual.

2. Compatibilidad entre navegadores: Virtual DOM nos ayuda a resolver problemas entre navegadores, nos proporciona una API estandarizada, incluso en IE8.

3. Modularización: escriba componentes de interfaz de usuario modulares independientes para su programa, de modo que cuando uno o algunos componentes tengan problemas, puedan aislarse fácilmente.

4. Flujo de datos unidireccional: Flux es una arquitectura para crear una capa de datos unidireccional en aplicaciones JavaScript, que fue conceptualizada por Facebook junto con el desarrollo de la biblioteca React view.

5. JavaScript puro e isomorfo: debido a que los rastreadores de los motores de búsqueda dependen de las respuestas del lado del servidor en lugar de la ejecución de JavaScript, la representación previa de su aplicación ayuda con el SEO.

6. Buena compatibilidad: por ejemplo, use RequireJS para cargar y empaquetar, mientras que Browserify y Webpack son adecuados para crear aplicaciones a gran escala. Hacen que esas tareas difíciles sean menos abrumadoras.

Desventajas: 1. React en sí mismo es solo una V, no un marco completo, por lo que si desea un marco completo para un proyecto a gran escala, básicamente necesita agregar ReactRouter y Flux para escribir aplicaciones a gran escala.

6. BackboneJS

================================================== ========================

Backbone.js proporciona modelos, colecciones y vistas para aplicaciones web complejas. El modelo se usa para vincular datos de valor clave y eventos personalizados; la colección tiene una API enriquecida con funciones enumerables; la vista puede declarar funciones de procesamiento de eventos y conectarse a la aplicación a través de la interfaz RESRful JSON.

Supongo que te gusta

Origin blog.csdn.net/m0_65484000/article/details/122133542
Recomendado
Clasificación