AngularJS의 의존성 주입(Dependency Injection)
AngularJS의 의존성 주입(Dependency Injection) 장점
요약하자면, AngularJS 에서는 의존성 주입이 프레임워크의 핵심 기능 중 하나.
컨트롤러, 서비스, 디텍티브 등의 AngularJS 컴포넌트는 의존성 주입을 통해 필요한 다른 컴포넌트를 요청하고 이를 사용할 수 있음. 이를 통해 AngularJS애플리케이션을 모듈화하고 확장 가능한 구조를 가질 수 있음
AngularJS에서 의존성 주입을 사용하는 간단한 예시 코드와 파일 구조를 제공
MainController 컨트롤러가 GreetingService 서비스에 의존합니다. 이를 가능하게 하려면 scope', 'GreetingService', ...]'와 같은 방식으로 의존성을 주입하고 있습니다.
매개변수가 필요할 때 VS 필요하지 않을 때
첫 번째 경우에서는 DataService 서비스가 MainController에 의존하고 있으며, 이 의존성을 주입하기 위해 매개변수를 사용합니다. 반면에 두 번째 경우에서는 MainController가 직접 데이터를 생성하고 있으므로 매개변수가 필요하지 않음
-> 개인적인 메모
매개변수가 필요한 이유는 결국 데이터값을 잘 주고 받기 위함이고, 코드의 유연성, 유지보수, 재사용성가능하게 하는 것임.
react를 따지면 컴포넌트화 해서 페이지를 전체 랜더링하는 것이 아니라 그부분만 바뀔수 잇게 하는 것처럼, 둘다 결국 '편의성'으로 하는 것임.