프레임워크(Framework)와 라이브러리(Library)의 차이

O_K·2022년 10월 1일
0

IT

목록 보기
1/2
post-thumbnail

프레임워크(Framework)

원하는 기능 구현에 집중하여 개발할 수 있도록 일정한 형태와 필요한 기능을 갖추고 있는 뼈대를 의미

  • 애플리케이션 개발 시 필수적인 코드, 알고리즘, DB 연동과 같은 기능들을 위해 어느 정도 뼈대(구조)를 제공하며 이러한 뼈대 위에서 사용자는 코드를 작성하여 애플리케이션을 개발
  • 기반 구조를 그대로 재사용하고 비즈니스 로직과 관련된 부분을 추가적으로 구현하면 되기 때문에 빠른 어플리케이션 구축이 가능

라이브러리(Library)

라이브러리는 단순 활용가능한 도구들의 집합을 의미
-> 특정 기능을 모아둔 코드, 함수들의 집합

프레임워크 vs 라이브러리

프레임워크와 라이브러리의 차이는 흐름(Flow)에 대한 제어 권한이 어디에 있느냐의 차이
프레임워크는 제어의 역전(Inversion Of Control)이 적용되어있다.

프레임워크

전체적인 프로그램의 흐름을 자체적으로 가지고 있음
프로그래머가 그 안에 필요한 코드를 작성 -> 사용자로부터 하여금 코드를 연결할 공간을 강제함
=> 통제권은 사용자가 아닌 프레임워크에게 있다

라이브러리

사용자가 흐름에 대해 직접 제어 -> 언제, 어디서 호출할지를 사용자가 능동적으로 결정한다
=> 재료의 선택권이나 통제권은 사용자에게 있다

제어의 역전? IoC(Inversion Of Controll)

프레임워크에선 개발자가 아닌 프레임워크가 소프트웨어의 흐름을 제어한다
즉, 소프트웨어에 대한 제어권이 개발자에서 프레임워크로 역전 된 것이다

profile
즐거운 개발자가 목표

0개의 댓글