본문 바로가기

간단한 개발 정보

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

라이브러리는 한 마디로, 누군가의 족보라고 생각한다.

누군가가 짜놓은 코드를 필요할 때 우리가 사용하는 형식이다.

하지만 이러한 코드들은 단지 활용될 뿐이지, 그 자체로 동작하지는 않는다. (또한 코드를 수정할 수 없다.)

결국 호출하는 프로그램이나 API를 사용해야 한다. 여기서 프레임워크와의 차이점이 드러난다.

 

라이브러리는 단순히 우리의 코딩 삶에 있어, 도움을 주는 것이고 우리는 사용해도 되고, 안해도 된다.

하지만, 프레임워크는 말 그대로 프레임을 제공한다. 즉 우리는 프레임워크가 주는 프레임 안에서 정해진 대로 코드를 짜야한다. 우리에게 일종의 제어권한이 없는 것이다.

 

 

 

대표적으로 예시를 들어보자.

 

  라이브러리 프레임워크
JavaScript jQuery, Bootstrap, D3.js, React React, Vue, Angular
Python NumPy, Pandas, PyTorch Django

 

리액트의 홈페이지에서는 리액트는 라이브러리라고 소개한다. 하지만 우리의 컴포넌트를 가져와서 사용하는 환경임을 고려하였을 때, 프레임워크로서의 기능도 하는 것 같다. 굉장히 모호한 회색의 영역이라고 볼 수 있다.

 

 

프레임워크는 라이브러리의 상위개념이다. 왜냐하면, 프레임워크에도 여러 기능을 가진 클래스들이 존재하기 때문이다.


 

그냥 주저리 주저리 써봤다.

사실 이런 개념보다는 리액트에 대해서 쓰는 게 더 좋을 것 같다.

 

 

 

 

 

'간단한 개발 정보' 카테고리의 다른 글

그래서 웹이란게 뭔데?  (0) 2023.01.02
서버리스(Serverless)  (0) 2022.10.10