캐시(Cache)에 대해서 알아보자

메모리 캐시란?

  • 앱의 메모리 영역 일부분을 캐시로 사용
  • 메모리에서 데이터를 가져오기 때문에 디스크 캐싱에 비해서 빠른 장점
  • 앱이 종료되면 메모리에서 해제되기 때문에 캐싱한 데이터도 사라지는 단점

NSCache

애플의 Foundation 프레임워크에서 제공하고, 메모리 캐싱이 필요할 때 사용하는 클래스다.

  • 생성 비용이 많이 드는 데이터를 임시로 저장할 수 있다.
  • 임시 저장한 데이터를 재사용하기 때문에 생성 비용이 필요없어 성능상 이점을 얻을 수 있다.
  • 앱의 메모리가 부족한 경우, 임시 저장한 데이터를 자동으로 삭제한다.

디스크 캐시란?

  • 데이터를 파일 형태로 디스크에 저장
  • 앱을 종료해도 데이터가 사라지지 않는 장점
  • 디스크에 저장된 파일을 다시 읽고 써야하기 때문에 메모리 캐싱에 비해 느린 단점
  • 디스크 캐싱을 사용할 수록 앱이 휴대폰에 차지하는 용량이 커지게 되는 단점

FileManager

파일 시스템과 상호작용하기 위해서 사용하는 클래스다.