발길이 닿는 대로
article thumbnail
반응형

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

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


라이브러리

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

 

프레임워크

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

 

제어의 역전 원칙

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

 

공통점

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

 

차이점

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

'Dev > Backend' 카테고리의 다른 글

API  (0) 2023.07.20
profile

발길이 닿는 대로

@mlngwan

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