Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- Alexnet
- 논문리뷰
- dijkstra
- 백준
- deeplearning
- 짝지어제거하기
- NLP
- Java
- 관심사분리
- 1261
- 1916
- GPT
- 3745
- 백준 1339
- 디미터법칙
- 백준9095
- cs231n
- 1107번
- 다익스트라
- MachineLearning
- 백준 1339 자바
- 알렉스넷
- 백준 1916 자바
- 딥러닝
- 머신러닝
- 논문
- 논문구현
- 클린코드
- 알고리즘
- 자바
Archives
- Today
- Total
산 넘어 산 개발일지
제어 역전(Inversion of Control, IoC) 본문
우리는 평소 코딩을 할 때 라이브러리에서 가져온 코드를 가져와서 사용한다.
이처럼 라이브러리는 우리가 제어권을 가지고 호출해서 사용하는 대상이다.
제어역전은 우리의 제어권을 외부에 넘겨주고 외부에서 우리 코드르 호출하게 하는 방식이다.
대표적인 예가 바로 프레임워크다.
프레임워크는 이미 다른 개발자들에 의해 수많은 코드, 특히 추상 클래스와 인터페이스들로 구현되어 있고 이를 사용하는 방법도 정해져 있다. 이를 사용하는 개발자들은 그저 이 방법을 익히고 프레임워크에서 만들어져 있는 클래스를 상속하거나 인터페이스를 구현함으로써 프레임워크의 틀에 맞게 작동시킨다.
여기서 중요한 점은 우리가 프레임워크의 코드를 호출하는 것이 아니라 프레임워크가 우리의 코드를 호출해서 사용한다는 것이다.
즉 제어권이 우리가 아닌 프레임워크에 있는 것이다. 이를 제어역전(Inversion of Control)이라고 한다.
'Study > 용어' 카테고리의 다른 글
OCP (Open-Closed Principle) (개방-폐쇄 원칙) (0) | 2021.02.10 |
---|---|
의존성 주입(Dependency Injection) (0) | 2020.04.10 |
팩토리 패턴(Factory Pattern) (0) | 2020.04.10 |
관심사의 분리(Seperation of Concerns, SoC) (0) | 2020.04.09 |