라이브러리는 프로그램의 특정 기능을 수행하도록 미리 짜여진 코드 뭉치이다.
예를 들어 개발자가 브라우저에서 영상을 보는 기능을 개발하기 위해선 복잡한 코드 작업이 필요하다. 브라우저 대응, 해상도 변경, 배속 변경, HLS대응 등 많은 작업들이 있다.
하지만 이를 전부 개발하려면 난이도도 높고 시간도 오래걸리기 때문에, 브라우저 영상 라이브러리를 사용하면 수월하게 개발이 가능하다. 라이브러리 안에는 이 작업들을 미리 다 개발해놨기 때문에.
프레임워크는 코드의 큰 뼈대 (Frame)를 제공해줘서 그 뼈대에서 개발을 할 수 있도록 도와준다.
라이브러리와 마찬가지로 개발자가 미리 만들어 놓은 코드이다.
보통 개발을 할 때는 건축과 비슷하게 큰 틀을 고려한 후 내부를 채워넣는다. 그 때 프레임워크는 틀을 미리 제공해준다.
내가 코드를 컨트롤하고 모든 결정을 내린다. -> 라이브러리
- 시간을 절약할 수 있으며 관리가 쉬움
- 내가 부를 수 있다.
ex) 제이쿼리 , 리액트
누군가 정해준 규칙을 따르는가. -> 프레임워크
- 코드의 규칙을 결정 할 수 없음
- 어디에 코드를 넣어야하는지 알려줌
- 나를 부른다.
ex) 장고