프레임워크와 라이브러리

2024. 4. 2. 14:45컴퓨터지식/기술면접

 

프레임워크와 라이브러리

프레임워크와 라이브러리 차이점에 대해 설명해주세요.

프레임워크란?

프로그램의 기본 구조(뼈대)이다.

코드의 품질, 필수적인 코드, 알고리즘, 데이터베이스 연동과 같은 기능들을 어느정도 갖춘 뼈대를 제공하도록 만들어진 것.

프레임워크 만으로는 프로그램이 실행되지 않으며 기능을 추가해야 하고, 코드 작성 시 프레임워크가 정의한 규칙을 준수해야한다.

JavaScript 기반 프레임워크 Angyler
React 기반 프레임워크 Next.js 
Java 기반 프레임워크 Spring

 

라이브러리란?

비슷한 성격을 가진 plug-in의 집합을 뜻한다.

소프트웨어 개발에 사용되는 프로그램의 구성요소들 중에서 공통으로 사용될 수 있는 특정 기능들을 모아 모듈화 한 것이다. 즉, 자주 사용하는 기능들을 모아두었다가 필요한 곳에서 호출하여 사용할 수 있도록 한 묶음. 해당 기능을 사용하기 위해 필요한 곳에서 호출하여 사용할수 있도록 class 또는 function으로 만들어진 것들이다.

javascript의 대표적인 라이브러리
jQuery : HTML 돔을 손쉽게 조작하고, 이벤트 처리, 애니메이션, Ajax를 사용한 상호작용을 보다 쉽게 사용할 수 있도록 구현된 라이브러리
React: 사용자 인터페이스를 만들기 위한 라이브러리 - 리액트가 라이브러리인가 프레임워크인가는 많은 이야기가 나오는 주제이지만 리액트 공식 문서에서 라이브러리라고 표기하고 있음

 

플러그인이란?

어떤 특정한 하나의 기능이나 문제 해결을 위한 컴포넌트를 뜻한다.

즉, 사람들이 자주 사용할만한 기능들을 직접 구현할 필요없이 필요한 기능만 찾아서 사용할수 있도록 미리 만들어둔 것.

(라이브러리는 비슷한 플러그인들의 집합이다.)

대표적으로 Slider 나 Modal 같은 플러그인이 있다.

 

프레임워크와 라이브러리의 차이

1. 제어의 흐름 : 프레임워크는 필요할때 우리가 작성한 코드를 프레임워크가 가져가서 사용하고 라이브러리는 필요할때 개발자가 가져와서 사용하게 된다.

2. 기능 제공의 여부 :  프레임워크는 기능을 제공하지 않지만 라이브러리는 기능을 제공하고 있다.

 

'컴퓨터지식 > 기술면접' 카테고리의 다른 글

Null / Undefined / Undeclared / NaN 에 대해 설명해주세요.  (0) 2024.04.06
캐시  (0) 2024.04.02
Cookie MaxAge, Expires  (0) 2024.04.01
useRef  (0) 2023.07.29
Hoisting, TDZ / parameter, argument  (0) 2023.07.26