Services & Dependency Injection
Services, @Injectable, providedIn, dependency injection, hierarchical injectors, injection tokens, providers
1¿Qué es un service en Angular?
¿Qué es un service en Angular?
Respuesta
Un service es una clase TypeScript decorada con @Injectable que encapsula lógica de negocio o datos compartidos. Los services siguen el principio de separación de responsabilidades al extraer lógica reutilizable fuera de los componentes. Pueden ser inyectados en otras clases mediante el sistema de dependency injection de Angular, favoreciendo la modularidad y la testabilidad del código.
2¿Qué decorator permite hacer una clase inyectable en Angular?
¿Qué decorator permite hacer una clase inyectable en Angular?
Respuesta
El decorator @Injectable es obligatorio para que una clase pueda ser usada como service en el sistema de dependency injection de Angular. Este decorator permite a Angular generar los metadatos necesarios para resolver las dependencias del service. Sin @Injectable, el compilador TypeScript no conservaría la información de tipos necesaria para la inyección, causando errores en tiempo de ejecución.
3¿Cuál es la sintaxis correcta para crear un service básico?
¿Cuál es la sintaxis correcta para crear un service básico?
Respuesta
La sintaxis completa para crear un service Angular incluye importar el decorator Injectable desde @angular/core, luego aplicarlo a una clase con la opción providedIn. Esta configuración moderna registra automáticamente el service en el injector raíz de la aplicación. La opción providedIn: 'root' es la mejor práctica ya que permite tree-shaking y garantiza un singleton global.
¿Qué significa providedIn: 'root' en @Injectable?
¿Cómo inyectar un service en un componente?
+17 preguntas de entrevista
Otros temas de entrevista Angular
Conceptos básicos de TypeScript
TypeScript Avanzado
Fundamentos de Angular
Componentes y ciclo de vida
Organización de Módulos Angular
Angular CLI
Directivas y Pipes
Routing y Navegación
Formularios reactivos
Formularios template-driven
Fundamentos de RxJS
Operadores RxJS
HttpClient y llamadas API
Gestión de estado básica
Change Detection
Angular Signals
Standalone Components
Pruebas unitarias en Angular
Testing End-to-End
Build y optimización
Fundamentos de NgRx
NgRx avanzado
Arquitectura Angular
Optimización de rendimiento
Seguridad y buenas prácticas
Patrones avanzados de RxJS
Angular Universal y SSR
Micro-frontends Angular
Domina Angular para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis