본문 바로가기
  • 기록
cs

프레임워크 vs 라이브러리

by juserh 2022. 1. 21.

1. 개념

라이브러리: 정보의 저장소, 활용 가능한 도구의 집합

프레임워크: 뼈대, 기반구조

2. 특징

라이브러리: 클래스들의 나열, 필요한 클래스 불러서 사용

프레임워크: 특정 개념들의 추상화를 제공하면서 클래스나 컴포넌트로 구성됨

                컴포넌트 재사용 가능

                높은 수준의 패턴 조작화 가능

3. 차이

포인트: 제어 흐름의 주동성이 어디에 있는지

라이브러리: 사용자가 흐름을 만들고, 라이브러리를 가져와서 씀(사용자 흐름 주도)

프레임워크: 프레임워크가 전체적인 흐름을 가지고 있으며, 그 틀 안에서 필요한 코드 구성(틀이 흐름을 쥐고 있음)

               

+)그래서 프레임워크를 사용하고자 할 때는 프로그램의 특성,목적과 부합하는지 확인할 필요가 있음. 만약 그런 프레임워크를 찾기 힘들다면 이를 라이브러리 단계에서 변경하여 다른 프레임워크로 만들어 사용할 수도 있음.

4. 라이브러리와 프레임워크 사용의 장단점

장점: 개발이 편하고 개발 기간 줄일 수 있음. 오류도 줄일 수 있음

단점: 사용법 익힐 시간 필요, 프레임워크 선택 중요.

6. 예시

라이브러리: beautifulsoup(python), stl(c++) 등

프레임워크: spring, django 등