프레임워크

원하는 기능 구현에 집중하여 개발할 수 있도록 필요한 기능을 갖추고 있는 골격, 뼈대를 의미하며 제어의 역전 개념이 적용된 대표적인 기술입니다.

 

제어의 역전이란?

어떠한 일을 하도록 만들어진 프레임워크에 제어의 권한을 넘김으로써 클라이언트 코드가 신경 써야 할 것을 줄이는 전략

개발자가 작성한 객체나 메서드의 제어를 개발자가 아니라 외부에 위임하는 설계 원칙

 

라이브러리

라이브러리는 개발자가 필요한 특정 기능들을 미리 구현하여 놓은 도구들의 집합을 말합니다.

개발자가 만든 클래스에서 호출하여 사용, 클래스들의 나열로 필요한 클래스를 불러서 사용하는 방식을 취하고 있습니다.

 

라이브러리와 프레임워크의 차이는 제어 흐름에 대한 주도성이 누구에게/어디에 있는가에 있습니다.

이것은 어플리케이션의 Flow(흐름)를 누가 쥐고 있느냐에 달려 있다는 것을 의미하는데,

우선 프레임워크는 전체적인 흐름을 스스로가 쥐고 있으며 사용자는 그 안에서 필요한 코드를 짜 넣는 형태이기 때문에 제어의 흐름에 대한 주도성이 내재하고 있는 반면에 라이브러리는 라이브러리를 가져다가 사용하고 호출하는 것과 같이 사용자가 전체적인 흐름을 만들고 있다고 볼 수 있습니다.

 

 

'기술면접스터디' 카테고리의 다른 글

HTTP(Hyper Text Transfer Protocol)이란?  (0) 2023.02.23
캐시의 장단점과 활용  (0) 2023.02.23
호이스팅  (0) 2023.02.22
매개변수(parameter)와 인수(argument)의 차이  (0) 2023.02.22
Restful API란?  (0) 2023.02.21

+ Recent posts