1. Libros
  2. Angular - Desarrolle sus aplicaciones web con el framework JavaScript de Google

Angular Desarrolle sus aplicaciones web con el framework JavaScript de Google

  • Disponible
  • Expedido en 24 horas
  • Envío gratis a partir de 25 € de compra
  • Versión online gratis por un año
  • Consulta inmediata
  • Versión online digital, no descargable
  • Acceso ilimitado 24/7, durante 10 años
  • Acceso ilimitado 24/7, durante 10 años
  • Todos los libros online de ENI
  • Más de 5 novedades todos los meses
  • Novedades disponibles el mismo día de su publicación
  • Acceso 100% online

Presentación

Este libro permite a los lectores embarcarse en el desarrollo de aplicaciones web con el framework Angular (en la versión 8 en el momento de la redacción de este libro). Para una mejor comprensión de su contenido, es necesario tener un conocimiento mínimo sobre el funcionamiento de la web y sobre los lenguajes HTML y JavaScript. Los autores tuvieron que escribir un libro muy pragmático con numerosos ejemplos de código, comentados y explicados, que ilustran de manera muy concreta los pasajes más teóricos. Diseñado para ser un efectivo aliado a diario, este libro muy estructurado constituye una verdadera referencia Angular para el desarrollador.

En los primeros capítulos, para poder comenzar el desarrollo de una aplicación con Angular, los autores tratan temas que se deben dominar, como qué son los componentes, los templates, los pipes e incluso los módulos. También se estudian el lenguaje Microsoft TypeScript y la herramienta de línea de comandos CLI.

Cada uno de los siguientes capítulos detalla una pieza específica del framework. El lector aprende qué es un componente, un servicio o una directiva y cómo usarlos. Se trata la operación de inyección de dependencias o enrutamiento, así como la creación de un formulario o las interacciones con el usuario.

El libro continúa con el aprendizaje de las pruebas de una aplicación angular, ya sea a través de pruebas unitarias o de integración (end-to-end), así como las diversas posibilidades existentes para hacer una aplicación multiplataforma (o cross-platform).

Finalmente, un capítulo está dedicado a temas más avanzados, en los que los autores detallan en particular cómo realizar la representación del lado del servidor e incluso la operación del motor de detección de cambios.

¡Nuevo! Rondas de preguntas disponibles con la versión online.

¡Ronda de preguntas
incluida en
la versión online !
  • Ponga a prueba sus conocimientos al final de cada capítulo
  • Evalúe sus competencias

Índice

  • Prefacio
    • 1. ¿ Por qué este libro ?
    • 2. ¿ A quién se dirige este libro ?
    • 3. Estructura del libro
  • Introducción
    • 1. Situación actual del desarrollo web
    • 2. Angular
      • 2.1 Organización por componentes
      • 2.2 TypeScript
      • 2.3 Las especificaciones ES6
      • 2.4 DOM virtual
      • 2.5 Renderizado posible en el lado del servidor
    • 3. AngularJS vs Angular
  • Mi primera aplicación
    • 1. Introducción
    • 2. El setup
      • 2.1 Instalación de npm
      • 2.2 Instalación de Angular CLI e inicialización del proyecto
    • 3. Mi primer componente
    • 4. Mi primer módulo
    • 5. Ejecución de la aplicación
  • Fundamentos de Angular
    • 1. Introducción
    • 2. Los componentes
    • 3. Los templates
      • 3.1 Binding
      • 3.2 Eventos JavaScript
      • 3.3 Listas
      • 3.4 Mostrar/ocultar un elemento
      • 3.5 Enlaces
      • 3.6 Estilos
      • 3.7 Directivas
    • 4. Los decoradores
    • 5. Los pipes
      • 5.1 Utilizar un pipe
      • 5.2 Los pipes del framework
      • 5.3 Crear un pipe
        • 5.3.1 Los pipes de transformación
        • 5.3.2 Los pipes filtros
      • 5.4 Los pipes puros e impuros
    • 6. Los módulos
    • 7. Observable y promesa
    • 8. Preparar la aplicación para un entorno de producción
  • TypeScript
    • 1. JavaScript
    • 2. TypeScript
      • 2.1 Sintaxis
        • 2.1.1 Variables
        • 2.1.2 Funciones
        • 2.1.3 Clases
        • 2.1.4 Arrow Function
        • 2.1.5 Unión de tipos
        • 2.1.6 Interfaz
        • 2.1.7 Genérico
        • 2.1.8 Los decoradores
      • 2.2 Typings
      • 2.3 Compilación
      • 2.4 EcmaScript 6 y 7 a partir de ahora
      • 2.5 Angular y TypeScript
  • Angular CLI
    • 1. Introducción
    • 2. ¿ Qué es Angular CLI ?
      • 2.1 La definición
      • 2.2 Los comandos principales
        • 2.2.1 Crear un proyecto nuevo Angular CLI: ng new
        • 2.2.2 Compilar la aplicación: ng build
        • 2.2.3 Ejecutar la aplicación con ng serve
        • 2.2.4 Ejecutar pruebas con Angular CLI
      • 2.3 Los comandos de scaffolding
      • 2.4 La generación de un componente
    • 3. Configurar un proyecto Angular CLI
      • 3.1 Esquema del archivo de configuración de Angular CLI
      • 3.2 Gestionar los assets durante la compilación
      • 3.3 Integrar una librería externa
      • 3.4 Integrar un pre-procesador CSS
      • 3.5 Añadir entidades de manera global
        • 3.5.1 Añadir un script globalmente
        • 3.5.2 Añadir una hoja de estilo globalmente
      • 3.6 Eliminar la configuración Webpack
    • 4. Compilación Ahead-Of-Time (AOT)
  • Los componentes
    • 1. Introducción
    • 2. ¿ Qué es un componente ?
      • 2.1 Una primera definición
      • 2.2 Crear un primer componente
        • 2.2.1 Sintaxis inline
        • 2.2.2 Una sintaxis real, descompuesta en varios archivos
        • 2.2.3 Utilizar un componente en su aplicación
      • 2.3 Mostrar las propiedades de un componente
    • 3. Los inputs y outputs
      • 3.1 Los inputs de un componente
        • 3.1.1 Declarar una variable como Input
        • 3.1.2 Un ejemplo concreto con una lista
        • 3.1.3 Dar un nombre personalizado a su input
      • 3.2 Los outputs de un componente
      • 3.3 Dar un nombre personalizado a su output
    • 4. Interacción entre componentes
      • 4.1 Pasar un dato del padre al hijo con ayudar de un input
      • 4.2 Interceptar un cambio de valor con ayuda de un setter
      • 4.3 Notificar al padre con ayuda de un EventEmitter en output
      • 4.4 Observar los cambios de input con ngOnChanges
      • 4.5 Utilizar una variable local
    • 5. Los decoradores @ViewChild y @ViewChildren
      • 5.1 Recuperar una referencia con @ViewChild
      • 5.2 Recuperar varias referencias con @ViewChildren
    • 6. Los componentes Angular y la View Encapsulation
      • 6.1 El Shadow DOM
      • 6.2 Especificar una View Encapsulation
      • 6.3 Tipos de View Encapsulation
        • 6.3.1 View Encapsulation emulada
        • 6.3.2 La View Encapsulation nativa
        • 6.3.3 Ninguna View Encapsulation
  • Los servicios
    • 1. Introducción
    • 2. ¿ Qué es un servicio ?
    • 3. Declarar su servicio
    • 4. Utilizar su servicio
    • 5. Hacer su servicio asíncrono
      • 5.1 Las promesas
      • 5.2 Los observables
      • 5.3 ¿ Que elegir ?
    • 6. Notificar cuando los datos cambian
  • La inyección de dependencias
    • 1. Principio básico
    • 2. Inyección de dependencias en Angular
      • 2.1 Registro global
      • 2.2 Registro en un componente
      • 2.3 Inyectar una dependencia
    • 3. Provider
      • 3.1 UseClass
      • 3.2 UseExisting
      • 3.3 UseFactory
      • 3.4 UseValue
      • 3.5 OpaqueToken
      • 3.6 Dependencia opcional
      • 3.7 Inyección limitada
      • 3.8 Restricción del registro de una dependencia
  • La petición HTTP
    • 1. Introducción
    • 2. Obtener y enviar datos
    • 3. Transformar datos
    • 4. Comunicar de manera segura
    • 5. Simular la consulta HTTP
  • Las interacciones de usuario
    • 1. ¿ Qué es el event binding ?
    • 2. Suscribirse a un evento
    • 3. Recuperar una entrada de usuario
      • 3.1 ¿ Cómo manipular el objeto $event ?
      • 3.2 Utilizar un tipado fuerte para $event
      • 3.3 Una alternativa con template reference variable
      • 3.4 Utilizar un template reference variable con un evento
      • 3.5 Filtrar las entradas de usuario
  • Los formularios
    • 1. Los formularios basados en un template
    • 2. Crear un componente de formulario
      • 2.1 El componente
      • 2.2 La vista y el data binding
        • 2.2.1 La sintaxis ngModel
        • 2.2.2 ngModel en detalle
        • 2.2.3 La utilización de ngModel en un caso concreto
      • 2.3 Integrar el formulario en la aplicación
    • 3. Los estados y la validez de un campo
      • 3.1 Los estados de un input
      • 3.2 Aplicar estilos según la validez
    • 4. Enviar el formulario
    • 5. Los formularios y los FormControls
      • 5.1 Los controles y los grupos de controles
      • 5.2 Los validadores integrados
      • 5.3 Crear un validador personalizado
      • 5.4 Los validadores asíncronos
  • El enrutamiento
    • 1. Introducción
    • 2. Definir las rutas de una aplicación
    • 3. El renderizado de componentes
    • 4. Navegar en su aplicación
    • 5. Recuperación de los datos de enrutamiento
    • 6. Outlet con nombre
      • 6.1 Definir outlets con nombre
      • 6.2 Navegar con outlets con nombre
    • 7. Resolver
  • Las directivas
    • 1. Introducción
    • 2. ¿ Qué es una directiva ?
      • 2.1 Introducción
      • 2.2 Directivas comunes
        • 2.2.1 ngIf
        • 2.2.2 ngFor
        • 2.2.3 ngStyle
        • 2.2.4 ngClass
    • 3. Las directivas de atributo
      • 3.1 Crear una directiva de atributo
      • 3.2 Interactuar con los eventos del DOM
      • 3.3 Pasar valores a las directivas de atributo
    • 4. Las directivas estructurales
      • 4.1 La etiqueta <template> y el asterisco
      • 4.2 Crear una directiva estructural
  • Probar su aplicacion
    • 1. Introducción
    • 2. Las pruebas unitarias
      • 2.1 Introducción a las pruebas con Jasmine
      • 2.2 Ejecutar código antes o después cada prueba
      • 2.3 Los matchers disponibles
        • 2.3.1 ¿ Cómo utilizar un matcher ?
        • 2.3.2 Ejemplos de matchers
        • 2.3.3 Negación de un matcher
      • 2.4 Crear un matcher personalizado
        • 2.4.1 Crear una librería de matchers personalizados
        • 2.4.2 Utilizar un matcher personalizado
      • 2.5 Los componentes
        • 2.5.1 El componente a probar
        • 2.5.2 El TestBed
        • 2.5.3 Comprobar que el componente está bien instanciado
        • 2.5.4 Controlar las propiedades del componente
        • 2.5.5 Asegurarse de que el renderizado del componente sea coherente
      • 2.6 Los servicios
        • 2.6.1 El servicio a probar
        • 2.6.2 Probar el servicio
        • 2.6.3 Asegurarse de que el servicio se ha inyectado correctamente
      • 2.7 Las directivas
        • 2.7.1 La directiva a probar
        • 2.7.2 Probar la directiva
      • 2.8 Inyectar un falso servicio
    • 3. Las pruebas e2e
      • 3.1 Ejecutar las pruebas e2e
      • 3.2 Escribir una prueba e2e
        • 3.2.1 Interactuar con el navegador
        • 3.2.2 Recuperar un elemento del DOM e interactuar con él
        • 3.2.3 Interactuar con los elementos DOM
        • 3.2.4 Probar el componente
      • 3.3 Escribir una prueba e2e mejorada
  • La cross-platform con Angular
    • 1. Apache Cordova
      • 1.1 Crear un proyecto Apache Cordova
      • 1.2 Angular en Apache Cordova
      • 1.3 Utilizar un plug-in Apache Cordova
    • 2. Ionic 2
      • 2.1 Crear un proyecto Ionic
      • 2.2 Utilizar los componentes Ionic
      • 2.3 Utilizar Ionic DevApp
      • 2.4 Utilizar un plug-in con Ionic
  • Para llegar mas lejos
    • 1. Introducción
    • 2. Renderizado en el lado del servidor
      • 2.1 Principio de la implementación
      • 2.2 Añadir el renderizado en el lado del servidor
    • 3. La detección de cambios
      • 3.1 ¿ Por qué la detección de cambios ?
      • 3.2 Las zonas, o ¿ cómo notificar a Angular ?
        • 3.2.1 El comportamiento de la detección de cambios
        • 3.2.2 Inmutabilidad y estrategia de detección de cambios OnPush
      • 3.3 Todavía más control sobre la detección de cambios
    • 4. El ciclo de vida de un componente
      • 4.1 Presentación de los lifecycle hooks
        • 4.1.1 Los diferentes hooks
        • 4.1.2 Utilizar un lifecycle hook
      • 4.2 El ciclo de vida de un componente
        • 4.2.1 El constructor
        • 4.2.2 ngOnInit
        • 4.2.3 ngOnChanges
        • 4.2.4 ngDoCheck
        • 4.2.5 ngAfterContentInit
        • 4.2.6 ngAfterContentChecked
        • 4.2.7 ngAfterViewInit
        • 4.2.8 ngAfterViewChecked
        • 4.2.9 ngOnDestroy
    • índice

Autores

Daniel DJORDJEVICMás información

Desarrollador apasionado durante muchos años, Daniel DJORDJEVIC siempre se ha interesado en las tecnologías web. En la actualidad es un desarrollador de Full Stack y trabaja en toda el stack de nuevos proyectos, especialmente con Angular y ASP.NET Core dentro de la nube de Microsoft Azure.

Sébastien OLLIVIERMás información

Desarrollador web de Full Stack durante varios años, Sébastien OLLIVIER está particularmente interesado en cuestiones de arquitectura y rendimiento. Diariamente, trabaja en temas de interfaz de usuario, arquitectura de nube, rendimiento y DevOps. Es reconocido como el MVP de Microsoft (Most Valuable Professional) en la categoría Developer Technologies y también es el autor dos libros sobre Angular publicados por Ediciones ENI. Puede seguir su actualidad en su cuenta de twitter @SebastienOll et sur son blog https://sebastienollivier.fr/blog.

William KLEINMás información

Apasionado desarrollador web Full Stack, William KLEIN está en permanente vigilancia tecnológica en los campos de aplicaciones web y tecnologías .NET. Es reconocido MVP de Microsoft (Most Valuable Professional) en la categoría Developer Technologies.

Características

  • Nivel Medio a Experto
  • Número de páginas 370 páginas
  • Publicación abril 2020
    • Encuadernación rústica - 17 x 21 cm
    • ISBN: 978-2-409-02530-3
    • EAN: 9782409025303
    • Ref. ENI: EIT2ANGOO
  • Nivel Experto a Medio
  • Publicación abril 2020
    • HTML
    • ISBN: 978-2-409-02531-0
    • EAN: 9782409025310
    • Ref. ENI: LNEIT2ANGOO