# Services & Dependency Injection (Angular) > Services, @Injectable, providedIn, dependency injection, hierarchical injectors, injection tokens, providers - 20 domande da colloquio - Junior - [Domande da colloquio: Angular](https://sharpskill.dev/it/technologies/angular/domande-colloquio.md) ## 1. Cos'è un service in Angular? **Risposta** Un service è una classe TypeScript decorata con @Injectable che incapsula logica di business o dati condivisi. I service seguono il principio della separazione delle responsabilità estraendo la logica riutilizzabile dai componenti. Possono essere iniettati in altre classi grazie al sistema di dependency injection di Angular, favorendo la modularità e la testabilità del codice. ## 2. Quale decorator rende una classe injectable in Angular? **Risposta** Il decorator @Injectable è obbligatorio affinché una classe possa essere utilizzata come service nel sistema di dependency injection di Angular. Questo decorator permette ad Angular di generare i metadati necessari per risolvere le dipendenze del service. Senza @Injectable, il compilatore TypeScript non manterrebbe le informazioni sui tipi necessarie per l'injection, causando errori a runtime. ## 3. Qual è la sintassi corretta per creare un service di base? **Risposta** La sintassi completa per creare un service Angular include l'importazione del decorator Injectable da @angular/core, quindi la sua applicazione a una classe con l'opzione providedIn. Questa configurazione moderna registra automaticamente il service nell'injector radice dell'applicazione. L'opzione providedIn: 'root' è la best practice poiché abilita il tree-shaking e garantisce un singleton globale. ## Altre 17 domande disponibili - Cosa significa providedIn: 'root' in @Injectable? - Come iniettare un service in un componente? Registrati gratis: https://sharpskill.dev/it/login ## Altri argomenti di colloquio Angular - [Fondamenti di TypeScript](https://sharpskill.dev/it/technologies/angular/domande-colloquio/typescript-basics.md): 25 domande, Junior - [TypeScript Avanzato](https://sharpskill.dev/it/technologies/angular/domande-colloquio/typescript-advanced.md): 20 domande, Junior - [Fondamenti di Angular](https://sharpskill.dev/it/technologies/angular/domande-colloquio/angular-fundamentals.md): 20 domande, Junior - [Componenti e ciclo di vita](https://sharpskill.dev/it/technologies/angular/domande-colloquio/components-lifecycle.md): 20 domande, Junior - [Organizzazione dei moduli Angular](https://sharpskill.dev/it/technologies/angular/domande-colloquio/modules-organization.md): 22 domande, Mid-Level - [Angular CLI](https://sharpskill.dev/it/technologies/angular/domande-colloquio/angular-cli.md): 18 domande, Junior - [Direttive e Pipe](https://sharpskill.dev/it/technologies/angular/domande-colloquio/directives-pipes.md): 22 domande, Mid-Level - [Routing e Navigazione](https://sharpskill.dev/it/technologies/angular/domande-colloquio/routing-navigation.md): 24 domande, Mid-Level - [Form reattivi](https://sharpskill.dev/it/technologies/angular/domande-colloquio/forms-reactive.md): 26 domande, Mid-Level - [Form template-driven](https://sharpskill.dev/it/technologies/angular/domande-colloquio/forms-template-driven.md): 16 domande, Mid-Level - [Fondamenti di RxJS](https://sharpskill.dev/it/technologies/angular/domande-colloquio/rxjs-fundamentals.md): 22 domande, Mid-Level - [Operatori RxJS](https://sharpskill.dev/it/technologies/angular/domande-colloquio/rxjs-operators.md): 24 domande, Mid-Level - [HttpClient e chiamate API](https://sharpskill.dev/it/technologies/angular/domande-colloquio/http-client.md): 22 domande, Mid-Level - [Gestione dello stato di base](https://sharpskill.dev/it/technologies/angular/domande-colloquio/state-management-basics.md): 20 domande, Mid-Level - [Change Detection](https://sharpskill.dev/it/technologies/angular/domande-colloquio/change-detection.md): 20 domande, Mid-Level - [Angular Signals](https://sharpskill.dev/it/technologies/angular/domande-colloquio/angular-signals.md): 20 domande, Mid-Level - [Standalone Components](https://sharpskill.dev/it/technologies/angular/domande-colloquio/standalone-components.md): 18 domande, Mid-Level - [Test unitari in Angular](https://sharpskill.dev/it/technologies/angular/domande-colloquio/testing-unit.md): 22 domande, Mid-Level - [Testing End-to-End](https://sharpskill.dev/it/technologies/angular/domande-colloquio/testing-e2e.md): 18 domande, Mid-Level - [Build e ottimizzazione](https://sharpskill.dev/it/technologies/angular/domande-colloquio/build-optimization.md): 20 domande, Mid-Level - [Fondamenti di NgRx](https://sharpskill.dev/it/technologies/angular/domande-colloquio/ngrx-fundamentals.md): 24 domande, Senior - [NgRx avanzato](https://sharpskill.dev/it/technologies/angular/domande-colloquio/ngrx-advanced.md): 24 domande, Senior - [Architettura Angular](https://sharpskill.dev/it/technologies/angular/domande-colloquio/angular-architecture.md): 22 domande, Senior - [Ottimizzazione delle performance](https://sharpskill.dev/it/technologies/angular/domande-colloquio/performance-optimization.md): 22 domande, Senior - [Sicurezza e best practice](https://sharpskill.dev/it/technologies/angular/domande-colloquio/security-best-practices.md): 20 domande, Senior - [Pattern RxJS avanzati](https://sharpskill.dev/it/technologies/angular/domande-colloquio/advanced-rxjs-patterns.md): 22 domande, Senior - [Angular Universal e SSR](https://sharpskill.dev/it/technologies/angular/domande-colloquio/angular-universal-ssr.md): 20 domande, Senior - [Micro-frontend Angular](https://sharpskill.dev/it/technologies/angular/domande-colloquio/micro-frontends-angular.md): 20 domande, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/it/technologies/angular/domande-colloquio/services-dependency-injection