WIL04

·2023년 4월 24일
0

DI, IoC, Bean

  1. IoC(Inversion of Control): IoC는 제어의 역전이라는 뜻으로, 기존의 제어 흐름이 개발자가 코드를 작성하여 제어하는 것이 아니라 프레임워크나 컨테이너 같은 외부에서 제어가 되는 개념을 말합니다.개발자가 객체의 생성과 관리, 제어 흐름 등을 직접 제어하는 것이 아니라, 외부에서 이를 관리하는 것을 의미합니다. 이로써 코드의 결합도를 낮추고, 유연한 구조를 가질 수 있습니다.
  1. DI(Dependency Injection): DI는 의존성 주입이라는 뜻으로, 객체 간의 의존성을 외부에서 주입하는 개념을 말합니다.객체가 다른 객체에 의존할 때, 객체를 직접 생성하거나 참조하는 대신 외부에서 해당 객체를 주입받아 사용하는 방식입니다. 이로써 객체 간의 결합도를 낮추고, 테스트 용이성과 재사용성을 높일 수 있습니다.
  1. DI는 IoC를 구현하는 방법 중 하나로, 외부에서 객체를 주입하는 것이 IoC의 한 형태라고 볼 수 있습니다. DI는 생성자 주입(Constructor Injection), 메서드 주입(Method Injection), 속성 주입(Property Injection) 등의 방법으로 구현될 수 있습니다. 이러한 IoC와 DI는 객체지향 프로그래밍에서 유연하고 확장 가능한 소프트웨어 아키텍처를 구현하는데 도움을 주는 중요한 개념입니다.

회고 :

0개의 댓글