프레임워크는 말 그대로 뼈대 즉, 프로그램 구현에 있어서 큰 구조를 결정하고 흐름을 제어하는 역할을 한다.
라이브러리는 자주 사용되는 로직들의 모음 혹은 묶음이라고 할 수 있다.
자주쓰는 메소드나 함수등을 미리 구현해두고, 프로그램에서 추가하여 사용하는 형태인 셈이다.
프레임워크와 라이브러리의 가장 큰 차이점은 제어흐름에 대한 주도권이다.
프레임워크의 경우 전체적인 흐름을 제어하고 있으며, 개발자가 그 안에 필요한 코드를 넣는데 반해,
라이브러리의 경우 개발자가 흐름을 만들며 라이브러리를 사용하는 것이라고 볼 수 있다.
비유적으로는 자동차가 프레임이라면, 라이브러리가 바퀴 나 핸들과 같은 부속품이라고 볼 수 있다.
캐시의 장점은 계산이나 접근에 소요되는 시간없이 빠른 속도로 데이터에 접근할 수 있다는 점이다.
캐시의 단점은 비용이 비싸고, 메모리 공간이 상대적으로 작다는 점이다.
프론트엔드에서의 대표적 캐시 이용사례는 다음과 같다.