제어의 역전(IoC)

김영후·2022년 12월 7일
0

CS

목록 보기
11/15
post-thumbnail

제어의 역전(Inversion Of Control)

프로그램의 흐름(객체의 생성, 생명주기)을 개발자가 직접 제어하는 것이 아닌 외부에서 제어 및 관리해주는 것을 말한다.

프레임워크 없이 개발할 때 객체의 생성, 설정, 초기화, 메소드 호출, 소멸(객체의 생명주기)을 프로그래머가 직접 관리한다.

또한 전통적인 프로그래밍에서는 외부 라이브러리를 사용할 때, 개발자가 직접 외부 라이브러리를 호출하는 형태로 이용한다.

하지만 프레임워크를 사용하면 객체의 생명 주기를 모두 프레임워크에 위임할 수 있다. 즉, 외부 라이브러리가 프로그래머가 작성한 코드를 호출하고, 흐름을 제어한다.

이와 같이 개발자가 작성한 객체나 메서드의 제어를 개발자가 아니라 외부에 위임하는 설계 원칙을 제어의 역전(Inversion Of Control)이라고 한다.

profile
배움기록

0개의 댓글