라이브러리와 프레임워크란? library, framework

반응형

개발 중에

"OO 라이브러리가 있어서 사용했습니다".

"이번 개발에서는 OO 프레임워크를 사용했습니다." 등

라이브러리와 프레임워크는 자주 사용하는 용어 입니다.

 

네이버 사전 정의

라이브러리 library

컴퓨터 프로그램에서 자주 사용되는 부분 프로그램들을 모아 놓은 것. 언제든지 자유롭게 이용할 수 있도록 구성되어 있다.

프레임워크 framework

어떤 일에 대한 판단이나 결정 따위를 위한 틀. ⇒규범 표기는 미확정이다.

라이브러리와 프레임워크

라이브러리와 프레임 워크의 공통점 재사용한 가능한 코드의 모음입니다.

 

라이브러리

라이브러리는 개발자가 언제든지 필요에 따라서 설치하고 자유롭게 사용할 수 있습니다.

ex) react, vue, 날짜 라이브러리, 차트 라이브러리 등

 

프레임워크

프레임워크에서 기본적인 기능을 제공하고, 그에 맞는 표준과 가이드에 맞게 개발자가 개발을 진행해야 합니다.

 

장점으로는 개발자가 더 빠르게 개발 할 수 있다는 장점이 있고,

복잡한 개발 보다는 문제 해결에 집중할 수 있다는 장점이 있습니다.

ex) Next.js, Nuxt.js Spring 등

 

제어의 역전 

라이브러리와 프레임워크가 가장 중요한 차이점은 제어의 역전(IoC, Inversion of Control) 입니다.

 

프레임워크를 사용한다는 것은

개발자가 프로젝트를 만들고, 필요한 라이브러리를 설치하고 사용하는 것이 아니고,

 

이 모든 과정을 프레임워크에 위임하는 것 입니다.

 

프레임워크가 이러한 과정을 위임하면

개발자는 초기 프로젝트 설정 등 복잡한 과정은 생략하고 빠르게 개발을 진행할 수 있고,

비즈니스 로직에 좀 더 집중할 수 있습니다.

 

단점으로는 일반 개발자가 프레임워크의 개념과 원리를 이해하기 어려울 수 도 있습니다.

 

프레임워크에 대해서 이해도가 부족하게 되면,

기존에 프레임워크에 기능이 있지만, 추가적으로 불필요한 라이브러리를 사용할 수 있고,

반대로 기껏 프레임워크를 도입하였지만 정작 필요한 기능은 없을 수 도 있습니다.

프레임워크 도입 전 제공하는 기능을 확인해보는 것이 좋습니다.

 

728x90
반응형