프레임워크
뼈대나 기반구조를 뜻한다. 완성된 제품을 만들기 위해서 개발자를 도와주는, 기반 역할을 한다.
소프트웨어의 특정 문제를 해결하기위해 상호 협력하는 클래스와 인터페이스의 집합입니다.
(Vue.js, Angularjs, nodejs 등... 리액트는 라이브러리임)
라이브러리
단순 활용가능한 도구들의 집합이다. 프로그래머가 어떤 기능을 수행하기위해 도움을 주고 필요한 것을 제공해주는 역할을 한다.
개발자가 만든 클래스에서 호출하여 사용, 클래스들의 나열로 필요한 클래스를 불러서 사용하는 방식이다.
(리액트, jQuery, styled-component 등...)
프레임워크와 라이브러리의 차이점
제어흐름이 어디있냐의 차이이다. 프레임워크는 전체적인 흐름을 자체적으로 가지고있어 개발자가 프레임워크 안에서 필요한 코드를 작성하고, 라이브러리는 개발자가 흐름을 가져 자신이 원하는 기능을 구현할 때 가져다가 사용한다.
프레임워크는 집, 라이브러리는 가구.
집안에서 생활하며 필요한 가구를 적절한 방식으로 사용한다.
면접
프레임워크와 라이브러리의 차이점은 제어흐름이 어디에 있냐는 것입니다. 프레임워크는 제어흐름을 자체적으로 가지고있어 프레임워크가 짜놓은 틀 안에서 코드가 수동적으로 작동하고, 라이브러리는 개발자가 흐름을 가져 능동적으로 필요한 곳에 호출하여 사용합니다.
참고자료
https://code-lab1.tistory.com/284
'1차 공부 > 기술면접 준비' 카테고리의 다른 글
HTTP에 대해 설명하고, 알고있다면 HTTP 메세지 구조에 대해 더 자세히 설명해주세요 (0) | 2023.02.23 |
---|---|
캐시의 장단점과 어떤 부분에 활용하는지 설명해주세요. 프론트엔드에서 캐시를 사용할 수 있는 2~3가지 영역을 제시해주세요 (0) | 2023.02.23 |
argument와 parameter의 차이 (0) | 2023.02.22 |
Hoisting이란? TDZ란? (0) | 2023.02.22 |
Restful API / 알고있는 메소드와 그 기준 / RESTful API 가 아닌 것 (0) | 2023.02.21 |