Home 프레임워크와 라이브러리의 차이
Post
Cancel

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

Framework

Frame = “틀”, work = “일한다” 단어를 합치면 “틀을 가지고 일한다”라는 의미가 된다. 어떠한 뼈대, 틀이 있을탠데 그 틀을 바탕으로 우리가 작업을 한다는 의미이다.

어릴 적 레고를 가지고 무언가 만들때 레고 부품들과 틀을 가지고 다양한 형태의 물건을 만드는 것과 같이 “제공받은 요소(부품)과 틀(뼈대)을 가지고 무언가를 만드는 일”라고 정의할 수 있다.

🔍 프레임워크 종류

  1. Java서버 개발에 사용되는 Spring
  2. Python 서버 개발에 사용되는 Django, Flask
  3. 안드로이드 개발에 사용되는 Android

Library

라이브러리는 도구들의 모음이다.

우리가 의자를 만들고 싶을때 사용하는 망치, 자, 톱 등 이런 도구들이다. 단순히 아무런 도구 없이 의자를 만들라고 하면 내 힘으로 모든 걸 다 만들어야 하기에 당연히 힘들고 시간도 오래걸린다. 라이브러리는 그러한 도구를 지원해줘서 쉽게 개발할 수 있도록 도와주는 함수들의 모음이다.

🔍 라이브러리 종류

  1. Python : padnas, tensorflow, datetiem 등
  2. Java : String, Random, Math, ArrayList 등

Difference

그러면 이 둘의 차이점은 무엇이 있을까?

제어 흐름

프레임워크는 제어의 역전개념이 적용되어 있다. 제어의 역전이란 말 그대로 제어의 흐름 구조가 뒤 바뀐다 라는 의미이다. 즉, 제어의 흐름이 프레임워크한태 있어 개발자가 그 안에서 필요한 코드를 넣는 반면 라이브러리는 개발자가 제어권을 가지고 있다.

This post is licensed under CC BY 4.0 by the author.