일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- network
- 다이나믹 프로그래밍
- Python
- Database
- 자바
- 백준
- TypeScript
- 알고리즘
- LeetCode
- DP
- 리트코드
- react
- 안드로이드
- DFS
- 동적 계획법
- git
- BFS
- Redux
- Graph
- Algorithm
- Javascript
- VIM
- Data Structure
- java
- 그레이들
- db
- vscode
- 프로그래머스
- frontend
- CS
Archives
- Today
- Total
늘 겸손하게
CS - 라이브러리와 프레임워크 차이 본문
Q : 비슷하지만 다른 라이브러리와 프레임워크 차이는 무엇일까?
[ 프레임워크 ]
어플리케이션 개발 시 제어 흐름을 담당하는 뼈대(구조)를 제공하며 이러한 뼈대 위에서 사용자가 코드를 작성하여 어플리케이션을 개발합니다.
[ 라이브러리 ]
소프트웨어를 개발할 때 프로그램이 사용하는 비휘발성 자원의 모임으로 특정 기능을 모아둔 코드, 함수들의 집합을 말합니다.
[ 프레임워크와 라이브러리 차이 ]
"제어 흐름"이 어디에 있는가 입니다.
프레임워크를 사용할 때 제어 흐름은 프레임워크에 있습니다. 프레임워크가 사용자가 작성한 코드를 사용하여 어플리케이션을 구동시키는 구조입니다.
반면에 라이브러리를 사용할 때 제어 흐름은 사용자에게 있습니다. 라이브러리를 사용하더라도 어플리케이션의 흐름을 제어하는 주체는 라이브러리의 사용자입니다.
그래서 프레임워크 내부에서 라이브러리 또한 동작할 수 있습니다.
이렇게 프로그램의 제어 흐름을 Framework에 위임하는 것을 제어의 역전(IoC, Inversion of Control)라고 부릅니다.
'Computer Science' 카테고리의 다른 글
CS - GET, POST 차이 (0) | 2023.10.16 |
---|---|
CS - 상대경로, 절대경로 (0) | 2023.08.23 |
CS - MariaDB, RDBMS (0) | 2022.09.28 |
CS - 클린코드 작성법 (0) | 2022.09.28 |
CS - DNS (0) | 2022.08.18 |