프레임워크, 라이브러리 / 캐시

새양말·2023년 3월 29일
0

내일배움캠프TIL

목록 보기
67/74
post-thumbnail

프레임워크와 라이브러리 차이점에 대해 설명해주세요.

웹 개발에서 프레임워크와 라이브러리는 모두 개발 프로세스를 보다 효율적으로 만드는 데 사용되는 도구입니다.

라이브러리는 DOM 조작, AJAX 요청 또는 이벤트 처리와 같은 특정 기능이나 작업을 수행하기 위해 호출할 수 있는 미리 작성된 코드 모음입니다. 라이브러리는 일반적으로 특정 문제 또는 일련의 문제를 해결하는 데 중점을 두며 개발자가 필요한 부분만 사용할 수 있도록 유연하고 모듈식으로 설계되었습니다.(React, Redux, JQuery, Lodash 등)

반면에 프레임워크는 전체 애플리케이션이나 웹 사이트를 구축하기 위한 구조를 제공하는 보다 포괄적인 도구입니다. 프레임워크에는 종종 사용 방법에 대한 지침 및 규칙과 함께 라이브러리 세트가 포함됩니다. 라이브러리보다 높은 수준의 추상화를 제공하며 웹 개발에 필요한 많은 일반적인 작업과 패턴을 처리하도록 설계되었습니다. 프레임워크는 일반적으로 라이브러리보다 독단적이며 학습 곡선이 가파를 수 있지만 일단 익숙해지면 더 강력하고 효율적일 수 있습니다.(넥스트js, 앵귤러, 뷰)

요약하면 프레임워크와 라이브러리의 주요 차이점은 기능 범위입니다. 라이브러리는 크기가 작고 특정 작업에 더 중점을 두는 반면 프레임워크는 크기가 더 크고 응용 프로그램 구축을 위한 보다 포괄적인 구조를 제공합니다.

캐시의 장단점과 어떤 부분에 활용하는지 설명해주세요. 프론트엔드에서 캐시를 사용할 수 있는 2~3가지 영역을 제시해주세요

캐싱은 보다 빠르고 효율적으로 액세스할 수 있도록 자주 액세스하는 데이터를 메모리에 저장하는 프로세스입니다. 프론트 엔드 개발에서 캐싱을 사용하여 웹 애플리케이션의 성능과 속도를 향상시킬 수 있습니다.

캐싱의 장점:

  1. 로드 시간 단축: 캐시된 데이터를 메모리에서 빠르게 검색할 수 있으므로 페이지 로드 시간이 단축되고 전반적인 사용자 경험이 향상됩니다.
  2. 서버 부하 감소: 자주 액세스하는 데이터를 캐싱함으로써 서버는 더 적은 수의 요청을 처리해야 하므로 서버 부하를 줄이고 애플리케이션의 확장성을 향상시킬 수 있습니다.
  3. 더 나은 오프라인 지원: 캐싱을 사용하면 데이터를 브라우저 캐시에 저장하여 웹 응용 프로그램이 오프라인에서 또는 네트워크 연결이 좋지 않은 상태에서도 작동할 수 있습니다.

캐싱의 단점:

  1. 오래된 데이터: 캐시된 데이터는 자주 업데이트되지 않으면 오래되어 응용 프로그램의 부정확성과 오류로 이어질 수 있습니다.
  2. 메모리 사용량 증가: 캐싱은 브라우저 또는 장치의 메모리 사용량을 증가시켜 시스템의 전반적인 성능에 영향을 줄 수 있습니다.
  3. 보안 문제: 캐시된 데이터는 적절한 예방 조치를 취하지 않으면 XSS(교차 사이트 스크립팅) 공격과 같은 보안 위험에 취약할 수 있습니다.

프런트엔드에서 캐싱을 사용할 수 있는 영역:

  1. 이미지 캐싱: 이미지는 종종 크고 로드하는 데 시간이 오래 걸리므로 캐싱을 사용하여 자주 액세스하는 이미지를 메모리에 저장하여 후속 페이지 로드 시 이미지를 표시하는 데 걸리는 시간을 줄일 수 있습니다.
  2. API 응답 캐싱: API 응답을 캐싱하면 서버에 대한 요청 수를 줄이고 애플리케이션의 속도와 성능을 향상시킬 수 있습니다.
  3. JavaScript 및 CSS 캐싱: JavaScript 및 CSS 파일을 캐싱하면 웹 애플리케이션의 여러 페이지에서 재사용되는 경우가 많기 때문에 페이지를 로드하는 데 걸리는 시간을 줄일 수 있습니다.
    4.로컬스토리지, 세션 스토리지, UI 캐시.
profile
매번 기합넣는 양말

0개의 댓글