개인공부

이미지 캐싱 _ Kingfisher

h_luz 2024. 7. 6. 17:43

 

Kingfisher의 장점:

  1. 비동기 이미지 로드: URL에서 이미지를 비동기적으로 로드
  2. 캐싱: 이미지를 메모리와 디스크에 캐시하여 성능을 향상
  3. 간편한 사용: setImage(with:) 메서드 하나로 간편하게 이미지를 로드하고 캐시
  4. 다양한 기능: 이미지 변환, 애니메이션, 플레이스홀더, 에러 처리 등의 다양한 기능을 제공

최종프로젝트 어플이 특성상 이미지를 불러올 일이 많아서 Kingfisher 라이브러리를 사용하여 이미지를 로드하고 캐싱

// 대표 이미지
if let imageUrl = recentLog.representativeMediaURL, let url = URL(string: imageUrl) {
    backImg.kf.setImage(with: url)
} else {
    backImg.backgroundColor = .black
}

 

backImg.kf.setImage(with: url) 코드는 Kingfisher의 메서드로,

URL을 통해 이미지를 비동기적으로 다운로드하고, 캐시를 통해 이미지를 관리

 

Kingfisher는 URL을 통해 이미지를 비동기적으로 다운로드하고, 성공적으로 다운로드된 이미지를 메모리와 디스크에 캐시

이렇게 하면 동일한 이미지를 다시 요청할 때 네트워크를 통해 다운로드하지 않고 캐시에서 이미지를 불러올 수 있다.