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

seungbox·2023년 6월 1일
0

기술면접

목록 보기
2/3

프레임워크와 라이브러리의 차이는 제어흐름입니다.

라이브러리

  • 라이브러리를 사용할 때 사용자는 어플리케이션의 코드 흐름을 직접제어
    개발 시 필요한 기능이 있을 경우 능동적으로 라이브러리를 호출하여 사용하거나 기존에 구성된 함수나 코드를 가져다 써야 함.

프레임워크

  • 반면 프레임워크는 어플리케이션의 코드가 프레임워크에 의해 사용
    어플리케이션 코드는 프레임워크가 짜 놓은 틀에서 수동적으로 동작하기 때문에 제어의 흐름의 프레임워크가 가지고 있고 사용자가 그 안에 필요한 코드를 작성하게 됨

  • 즉, 라이브러리의 경우 어플리케이션의 흐름을 사용자가 직접 제어해야 하지만 프레임워크의 경우 코드를 연결할 수 있는 위치를 제공하고 필요에 따라 사용자가 연결한 코드를 호출하는 제어 흐름 권한을 가짐

캐시란?

  • 캐시란 자주 사용하는 데이터나 값을 미리 복사해 놓은 임시 장소를 의미
    캐시를 통해 이전에 접근한 데이터를 다시 불러올 때 속도를 향상시키고 데이터 처리 속도를 높일 수 있음

    장점

    • 접근 시간과 계산 없이 빠른 속도로 데이터에 접근할 수 있음
    • 접근 시간에 비해 원래 데이터에 접근하는 시간이 오래 걸리는 경우, 혹은 값을 다시 계산하는 시간을 절약하고자 하는 경우에 사용

    단점

    • 비용이 비싸고, 메모리 공간이 상대적으로 작음
    • 저장 용량이 한정되어 있음

프론트에서의 캐시 활용

  • 브라우저 캐시 사용
    • 브라우저에서 이미 방문한 웹 페이지의 리소스를 캐시 해서 다음에 동일한 페이지를 방문했을 때, 리소스를 다시 다운로드하지 않도록 할 수 있음.
    • 캐싱된 값을 이용하니 웹페이지 로딩 속도가 빨라 질 수 있음.
  • 웹 스토리지
    • 로컬, 세션 스토리지 같은 웹스토리지를 이용해서 웹 페잊이ㅔ서 사용하는 데이터를 캐싱하고 사용할 수 있음
    • 해당 데이터가 필요할 때 스토리지에서 사용하면 되니 서버 리소스 사용을 줄일 수 있음
  • CDN
    • 전 세계에 분산된 서버를 이용해서 사용자가 접속한 지역과 가까운 서버로부터 웹 페이지의 리소르를 빠르게 제공
    • CDN은 자체적으로 캐싱하기 때문에 같은 요청에 대해 더 빠르게 응답 할 수 있음.
profile
함께 하는 개발자

0개의 댓글