Vue progresivo: framework y componentes

Clase 3 de 37Curso de Reactividad con Vue.js 3

Resumen

¿Quieres entender Vue con claridad y sin rodeos? Aquí verás qué es un framework frente a una librería, por qué Vue es progresivo y cómo sus capas —declarative rendering y componentes— conectan datos y presentación con reactividad para crear interfaces rápidas y reutilizables.

¿Qué diferencia a un framework de una librería en JavaScript?

Para situarnos, primero se contrasta librería con framework. Las librerías son herramientas para tareas específicas en JavaScript; los frameworks son conjuntos de herramientas que marcan reglas y formas de trabajo.

  • Librerías: utilidades puntuales como fechas, DOM o creación de componentes.
  • Frameworks: reglas claras sobre cómo hacer las cosas.
  • Vue como framework: ecosistema amplio con librerías, plugins y utilidades.
  • Comunidad y core: no todo lo crea el core, también la comunidad.

¿Por qué Vue se considera un framework con ecosistema?

Vue integra piezas que cubren necesidades clave de una app moderna.

  • Reactividad: librería interna que gestiona cambios y estado.
  • Componentes: construcción modular y reutilizable.
  • Rutas dinámicas: navegación estructurada entre vistas.
  • Objetivo: crear proyectos reactivos con una experiencia consistente.

¿Qué es la progresividad y cómo organiza Vue sus capas?

La progresividad se entiende como capas, como una cebolla. Puedes iniciar con pocas capas y sumar más según crezca la complejidad. Cada capa funciona por separado y también en conjunto.

¿Cómo funciona el declarative rendering y la reactividad?

Esta capa conecta tu información con tu presentación. Si los datos cambian, la UI reacciona.

  • Información: arreglos, variables, objetos y tipos nativos de JavaScript.
  • Presentación: HTML en el navegador (imágenes, tablas, grillas y etiquetas).
  • Enlace datos-UI: cambios en variables o reordenamientos en arreglos se reflejan en pantalla.
  • Reactividad: respuesta automática y amigable para el usuario.
  • Rendimiento: Vue lo hace de forma muy rápida y cercana a JavaScript puro.

¿Qué filosofía impulsa su velocidad y ligereza?

Se destaca una filosofía de diseño orientada a ser rápido y liviano.

  • Creación: Evan You propone un enfoque minimalista y eficiente.
  • Contexto: pensado para escenarios con datos limitados de Internet.
  • Uso empresarial: compañías como Baidu y Alibaba aprovechan su ligereza.
  • Resultado: carga ágil y mejor acceso para usuarios con conexiones restringidas.

¿Cómo operan los componentes y la encapsulación en Vue?

Los componentes encapsulan HTML, CSS y JavaScript de partes específicas. Piensa en piezas de Lego: desde elementos pequeños hasta estructuras grandes que forman toda la aplicación.

  • Encapsulación: cada componente agrupa su estructura, estilos y lógica.
  • Reutilización: un header puede usarse en varias páginas.
  • Jerarquía: un componente principal puede incluir otros componentes.
  • Ejemplos: header, main, post, sidebar, links como botones de navegación.
  • Beneficio: orden, mantenibilidad y escalabilidad del proyecto.

¿Qué sigue para aplicar declarative rendering con Vanilla JavaScript y Vue?

Se propone resolver un problema real primero con Vanilla JavaScript y luego con la capa interna de Vue.

  • Objetivo: comparar enfoques para entender la “magia” detrás de la reactividad.
  • Práctica: ver cómo los cambios en datos impactan la presentación.
  • Preparación: identificar datos, UI y reglas de actualización.

¿Te gustaría profundizar en algún ejemplo de reactividad o en patrones de componentes reutilizables? Comparte tus dudas y experiencias.