Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • A angular
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • imunnic
  • angular
  • Wiki
  • Modulo 1.1

Last edited by imunnic Dec 22, 2025
Page history

Modulo 1.1

Sesión 1 – Introducción y ecosistema Angular

1. Angular como framework de desarrollo frontend

Angular es un framework frontend completo, desarrollado y mantenido por Google, orientado a la construcción de aplicaciones web SPA (Single Page Application) de tamaño medio y grande. A diferencia de otras soluciones más ligeras, Angular proporciona un ecosistema integral que cubre la mayoría de las necesidades habituales en el desarrollo de aplicaciones web modernas.

Angular no se limita a la capa de vista, sino que define una forma estructurada de construir aplicaciones, imponiendo una arquitectura clara y consistente desde el inicio del proyecto.

Entre sus características principales se encuentran:

  • Uso de TypeScript como lenguaje base
  • Arquitectura basada en componentes
  • Sistema de inyección de dependencias integrado
  • Enrutado de aplicaciones
  • Gestión de formularios
  • Cliente HTTP
  • Herramientas de testing y construcción incluidas

Este enfoque hace que Angular sea especialmente adecuado para proyectos donde la mantenibilidad, la escalabilidad y la consistencia del código son factores críticos.


2. Casos de uso habituales de Angular

Angular suele utilizarse en contextos donde:

  • La aplicación tiene un ciclo de vida largo
  • El código es mantenido por varios desarrolladores
  • Se requiere una estructura clara desde el inicio
  • La aplicación crece de forma progresiva en complejidad
  • Se trabaja en entornos corporativos o empresariales

Ejemplos habituales de uso incluyen:

  • Aplicaciones corporativas
  • Paneles de administración
  • Backoffices
  • Sistemas de gestión interna
  • Dashboards con alto grado de interacción

El carácter opinado del framework reduce la ambigüedad en la toma de decisiones técnicas y facilita la homogeneidad del código en equipos grandes.


3. Modelo de aplicación SPA

Angular se basa en el modelo SPA (Single Page Application). En este tipo de aplicaciones:

  • El navegador carga inicialmente un único documento HTML
  • La navegación entre vistas no provoca recargas completas
  • La interfaz se actualiza dinámicamente mediante JavaScript

Este modelo permite ofrecer una experiencia de usuario fluida, similar a la de una aplicación de escritorio, donde las transiciones entre pantallas son rápidas y sin interrupciones visibles.

Angular genera aplicaciones SPA de forma predeterminada.


4. Renderizado del lado del cliente (CSR)

En el modelo Client Side Rendering (CSR), el proceso de carga de la aplicación sigue los siguientes pasos:

  1. El navegador solicita la aplicación al servidor
  2. El servidor devuelve un HTML mínimo junto con los archivos JavaScript y CSS
  3. El framework se ejecuta en el navegador
  4. La interfaz se construye dinámicamente en el cliente

Este enfoque presenta varias ventajas:

  • Navegación rápida una vez cargada la aplicación
  • Separación clara entre frontend y backend
  • Experiencia de usuario fluida

Como contrapartida:

  • La primera carga puede ser más lenta
  • El contenido no está disponible inmediatamente para motores de búsqueda sin técnicas adicionales

Angular utiliza CSR como modelo base.


5. Renderizado del lado del servidor (SSR)

El Server Side Rendering (SSR) consiste en generar el HTML completo de la aplicación en el servidor antes de enviarlo al navegador.

En este modelo:

  • El servidor ejecuta Angular para renderizar la vista inicial
  • El navegador recibe HTML ya construido
  • Posteriormente, Angular toma el control en el cliente

Las principales ventajas del SSR son:

  • Mejora del SEO
  • Mejor tiempo hasta el primer contenido visible
  • Mejor rendimiento percibido

Angular soporta SSR mediante Angular Universal, aunque este curso se centra inicialmente en el modelo CSR para asentar las bases del framework.


6. Posicionamiento de Angular frente a otros frameworks

Dentro del ecosistema frontend moderno, Angular convive principalmente con React y Vue. Cada uno adopta un enfoque distinto.

Característica Angular React Vue
Naturaleza Framework completo Librería de UI Framework progresivo
Arquitectura Muy definida Flexible Intermedia
Enfoque Aplicaciones estructuradas Construcción de interfaces Simplicidad y adopción gradual
Escalabilidad Alta Alta (con decisiones adicionales) Media

Angular destaca por proporcionar una solución integral desde el inicio, reduciendo la necesidad de tomar decisiones sobre librerías externas o patrones arquitectónicos en fases tempranas del proyecto.


7. Entorno de desarrollo: Node.js y npm

Angular se apoya en Node.js como entorno de ejecución y en npm como gestor de paquetes.

Estas herramientas permiten:

  • Instalar dependencias
  • Ejecutar scripts de desarrollo
  • Lanzar el servidor local
  • Construir la aplicación para producción

Comprobación de versiones instaladas:

node -v
npm -v

Angular requiere versiones modernas de Node.js, recomendándose el uso de versiones LTS.


8. Angular CLI

Angular CLI es la herramienta oficial para trabajar con Angular. Su función principal es automatizar tareas comunes del desarrollo.

Entre sus responsabilidades se encuentran:

  • Creación de nuevos proyectos
  • Generación de componentes y otros artefactos
  • Ejecución del servidor de desarrollo
  • Compilación de la aplicación

Instalación global:

npm install -g @angular/cli

Verificación de la instalación:

ng version

Angular CLI estandariza la estructura del proyecto y promueve buenas prácticas desde el inicio.


9. Creación de un proyecto Angular

La creación de un nuevo proyecto se realiza mediante el comando:

ng new primer-proyecto-angular

Durante el proceso de creación, Angular CLI solicita información relacionada con:

  • Uso de enrutado
  • Formato de hojas de estilo

Una vez finalizado el proceso, se genera una estructura completa lista para su ejecución.

Acceso al proyecto:

cd primer-proyecto-angular

10. Ejecución del servidor de desarrollo

Angular incorpora un servidor de desarrollo que permite ejecutar la aplicación en local.

ng serve

El servidor compila la aplicación y la expone por defecto en:

http://localhost:4200

El entorno de desarrollo incluye recarga automática, lo que permite visualizar los cambios realizados en el código de forma inmediata.


Clone repository

Índice

  • Inicio
  • Módulo 1. Fundamentos y arranque del proyecto
    • Módulo 1.1 Angular
    • Módulo 1.2 Estructura
    • Módulo 1.2 Arquitectura y conceptos base
  • Módulo 2. Componentes y reutilización
  • Módulo 3. Navegación y estructura de aplicación
  • Módulo 4. Servicios y comunicación con backend
  • Módulo 5. Gestión de estado (Stores)