Angular

Services & Dependency Injection

Services, @Injectable, providedIn, dependency injection, hierarchical injectors, injection tokens, providers

20 면접 질문·
Junior
1

Angular에서 service란 무엇인가요?

답변

service는 @Injectable로 데코레이트된 TypeScript 클래스로, 비즈니스 로직이나 공유 데이터를 캡슐화합니다. service는 재사용 가능한 로직을 컴포넌트에서 추출하여 관심사 분리 원칙을 따릅니다. Angular의 dependency injection 시스템을 통해 다른 클래스에 주입될 수 있어 코드의 모듈성과 테스트 가능성을 향상시킵니다.

2

Angular에서 클래스를 injectable하게 만드는 데코레이터는 무엇인가요?

답변

@Injectable 데코레이터는 클래스가 Angular의 dependency injection 시스템에서 service로 사용되기 위해 필수입니다. 이 데코레이터는 Angular가 service의 의존성을 해결하는 데 필요한 메타데이터를 생성할 수 있게 합니다. @Injectable이 없으면 TypeScript 컴파일러는 injection에 필요한 타입 정보를 보존하지 않아 런타임 오류를 발생시킵니다.

3

기본 service를 생성하는 올바른 구문은 무엇인가요?

답변

Angular service를 생성하는 완전한 구문에는 @angular/core에서 Injectable 데코레이터를 임포트한 다음 providedIn 옵션과 함께 클래스에 적용하는 것이 포함됩니다. 이 최신 구성은 service를 애플리케이션의 루트 injector에 자동으로 등록합니다. providedIn: 'root' 옵션은 tree-shaking을 가능하게 하고 전역 싱글톤을 보장하므로 모범 사례입니다.

4

@Injectable의 providedIn: 'root'는 무엇을 의미하나요?

5

컴포넌트에 service를 어떻게 주입하나요?

+17 면접 질문

다음 면접을 위해 Angular을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기