[SpringBoot] 라이브러리와 프레임워크

임유빈·2022년 7월 23일
0

SpringBoot

목록 보기
3/10
post-thumbnail

1. Library

프로그램을 개발하는데 필요한 여러 기능을 활용할 수 있도록 묶어놓은 함수나 기능의 집합이다. 자주 활용하거나 필요한 기능을 편리하게 사용할 수 있도록 해주며, 제어권이 개발자에게 주어진다. (예 : JS 의 React 와 jQuery, Python 의 numpy)

2. Library 와 Module 의 차이

Module 은 함수와 클래스, 변수가 스크립트로 이루어져어 있는 하나의 파일이자 객체이며 import 하여 사용할 수 있다. Library 는 module 의 집합체로 불리기도 하나, 그 범위가 다양하여 개발에서는 같은 개념으로 사용되곤 한다.

3. Framework

프로그램을 개발하기 위한 구조를 제공하는 개발 환경이다. (& 그 자체로 Application 이다.) 자주 사용되는 여러 클래스 (변수와 함수의 묶음) 를 정해둔 흐름에 맞춰 쓸 수 있도록 지원해주며, Application 을 완성할 수 있는 기본적인 뼈대를 제공해준다. (예 : JS 의 Vue.js 와 Angular, Java 의 Spring, Python 의 Django)

4. Library vs Framework:

IoC (Inversion of Control):

Library 를 사용할 때 제어권(control)을 가지고 있는 주체는 코드 작성자이다. 코드 작성 중 필요에 따라 Library 를 호출하기 때문이다. Framework 을 사용할 때는 Framerwork 가 제어권을 가지고 있다. 따라서 코드 작성자는 코드 위치, 코드 작성법 등 Framework 의 규칙을 따라야 한다.

  • 프레임워크 : 특정 프로그램을 개발하기 위한 여러 요소들과 메뉴얼인 룰을 제공하는 프로그램
  • 라이브러리 : 프로그램을 개발하기 위해 쓰는 공구와 같은 도구들
  • 공통점 : 프로그램을 쉽게 만들 수 있게 하는 공통된 목적이 있음
  • 차이점 : 자유도, 프레임워크는 꼭 써야되는 것과 지켜야되는 룰이 있다. 라이브러리는 쓰든 안 쓰든 자기 마음이다.

0개의 댓글