어제보다 한걸음 더
article thumbnail
반응형

ㅍ이번 포스팅에서는 라이브러리와 프레임워크가 무엇인지 그리고 차이점에 대해 정리해보았습니다.

현재 백엔드 개발자를 지망하며 자바와 자바 스프링을 공부하고 있어 차이점을 정확히 알고 있어야 한다고 생각합니다.


라이브러리

  • 특정 기능을 수행하도록 미리 작성된 코드의 집합이다.
  • 개발자가 필요시 호출하여 사용한다.
  • 개발자의 코드가 라이브러리를 제어 및 호출한다.
  • 반복 작업 없이 필요한 기능을 빠르게 구현한다.
  • 일반적으로 어플리케이션 코드에서 호출 및 실행하는 역할이다.
  • ex) 수학 함수, 데이터 구조, 데이터 베이스 연결, 네트워킹, JSON 파싱 ...

 

프레임워크

  • 어플리케이션의 흐름 제어 및 전반적인 구조를 정의한다.
  • 어플리케이션의 뼈대 및 틀을 제공한다.
  • 개발자는 뼈대와 틀 안에 필요한 코드를 작성한다.
  • 제어의 역전 원칙을 따른다.

 

제어의 역전 원칙

  • 프레임워크가 어플리케이션 흐름을 제어하며 개발자의 코드를 적절한 시점에 호출한다.
웹 프레임워크를 예로 들면,
웹 프레임워크가 HTTP 요청을 처리하고 응답을 생성하는 전체 흐름을 제어한다.
개발자는 이 흐름 중에 특정 시점에 실행될 비즈니스 로직을 작성한다.

 

공통점

  • 라이브러리와 프레임워크 모두 재사용이 가능하다.

 

차이점

  • 가장 큰 차이점은 제어권을 누가 가지고 있는지의 차이이다.
라이브러리
개발자의 코드에 의해 제어되며 필요시 라이브러리가 호출된다.
주 - 개발자 코드 종- 라이브러리
프레임워크
어플리케이션의 전체 흐름을 프레임워크가 제어하며 필요시 개발자 코드가 호출된다.
주 - 프레임워크 종 - 개발자 코드
반응형

'CS' 카테고리의 다른 글

프론트엔드 (Front-End) / 백엔드 (Back-End)  (0) 2023.07.23
API  (0) 2023.07.20
profile

어제보다 한걸음 더

@mlngwan

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!