[개념 스터디1] - 라이브러리와 프레임워크의 차이

Yoon·2021년 8월 2일
0

[Dev] 개념 스터디

목록 보기
2/3


프레임워크와 라이브러리에 대해 알고는 개념적인 부분에서 헷갈리는 경우가 많다.

이번에 프레임워크와 라이브러리의 차이에 대해 알아보자.

프레임워크 (Framework)

  • Framework의 뜻을 살펴보면 "일정한 형태의 틀, 부품을 가지고 다양한 형태의 결과물을 만드는 것"이라고 할 수 있다.

  • 이를 SW적 관점에서 설명한다면, "특정 프로그램을 개발하기 위한 여러 요소들과 메뉴얼인 룰을 제공하는 프로그램"으로 설명할 수 있다.

  • 개발 할 때 필수적인 요소에 해당하는 설계와 구현을 재사용하기 수월하도록 만들어둔 툴이며
    언어, 컴퍼일러, API, 라이브러리, 알고리즘 , 지원 프로그램등을 포함한다.

  • Spring, Django, Ruby on Rails, vue, angular, node.js, flask 등이 있다.

라이브러리(Library)

  • 라이브러리는 활용 가능한 특정 기능에 대한 도구 또는 함수들의 집합이라 할 수 있다.

  • 프로그래머가 어떠한 기능을 수행하기 위해서 도움을 주는 또는 필요한 것을 제공해주는 역할을 한다.

  • 재사용성을 높이고 반복적인 코드 사용을 낮추기 위하여 사용된다.

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

  • 프로그램의 주도성에서의 차이
    • 라이브러리는 개발자가 모든 개발의 흐름을 제어한다.
      개발자가 주도가 되어 필요한 기능을 호출, 능동적으로 사용한다.
    • 프레임워크는 개발자가 아닌 프로그램 자체가 흐름을 제어한다.
  • 자유도 면에서 차이
    • 프레임워크는 소프트웨어가 개발되고 동작하는 기반 시설의 역할을 하므로 프레임워크가 없이는 앱이 동작할 수 없다.
    • 반면에 라이브러리는 특정 기능을 미리 만들어 둔 것으로 사실상 앱에 같은 기능을 구현한 코드가 있다면 해당 라이브러리를 쓸 필요가 없다. 따라서 라이브러리가 없어도 앱은 동작할 수 있다.

References :
https://juyeop.tistory.com/23
https://changun516.tistory.com/15
https://daheenallwhite.github.io/programming/2019/07/15/library-framework-api/

profile
FE Developer✨

0개의 댓글