Android
Glide 공식 문서 읽기 스터디 - 6 (28pg~33pg)
Glide 공식 문서 읽기 스터디 - 6 (28pg~33pg)
2025.05.31AppGlideModule주어진 애플리케이션에는 하나의 AppGlideModule 구현만 있을 수 있다 캐시Glide는 이미지 로딩 시 다음과 같은 순서로 캐시를 확인합니다활성 리소스 (Active Resources): 현재 다른 View에서 사용 중인 이미지메모리 캐시 (Memory Cache): 최근에 로드되어 메모리에 저장된 이미지리소스 디스크 캐시 (Resource Disk Cache): 디코딩 및 변환된 이미지가 디스크에 저장된 경우데이터 디스크 캐시 (Data Disk Cache): 원본 이미지 데이터가 디스크에 저장된 경우 모든 캐시 계층에서 이미지를 찾지 못하면, Glide는 원본 소스(예: 네트워크 URL, 로컬 파일 등)로부터 이미지를 새로 로드합니다. 즉, 캐시에 이미지가 없을 경우 ..
Glide 공식 문서 읽기 스터디 - 5 (23pg~28pg)
Glide 공식 문서 읽기 스터디 - 5 (23pg~28pg)
2025.05.27Glide 캐시 및 로드 시스템 정리Glide의 이미지 로딩 및 캐싱 시스템을 이해하기 위한 정리입니다. Glide는 고성능 이미지 로딩을 위한 Android용 라이브러리로, 메모리 및 디스크 캐시, 비트맵 재사용, 요청 최적화 등을 지원합니다. 메모리 캐시 (MemoryCache)Glide는 LruResourceCache를 통해 LRU(Least Recently Used) 방식의 메모리 캐시를 제공합니다.기본 크기는 MemorySizeCalculator에 의해 자동 결정되며, RAM 용량, 화면 해상도 등을 고려합니다.setMemoryCacheScreens(n)으로 n개의 화면 분량의 이미지를 캐싱할 수 있도록 커스터마이징 가능합니다. @GlideModule class YourAppGlide..
Glide 공식 문서 읽기 스터디 - 4 (18pg~23pg)
Glide 공식 문서 읽기 스터디 - 4 (18pg~23pg)
2025.05.25Glide가 이미지 사이즈를 계산하는 방식 Glide는 이미지를 로딩할 때, 내부적으로 View의 getSize()를 이용해 목표 사이즈를 계산합니다. Glide는 무작정 원본 이미지를 가져오는 게 아니라, 뷰에 딱 맞는 사이즈의 이미지를 가져오기 위해 노력합니다.불필요하게 큰 이미지로 인해 발생하는 메모리 낭비, 깜빡임, 렌더링 지연을 방지한다는 뜻입니다. 적절한 URLView 크기에 맞는 해상도의 이미지 URL을 선택해서 불러올 수 있음 (커스텀 구현 시)적절한 이미지View 크기에 맞게 원본 이미지를 다운샘플링/크롭/리사이즈한 최적화된 비트맵 ViewTarget의 역할 Glide에서 ViewTarget은 이미지가 로드될 View의 실제 사이즈를 계산하고 추적하는 핵심 클래스 ViewTarget은 ..
Glide 공식 문서 읽기 스터디 - 3 (13pg~18pg)
Glide 공식 문서 읽기 스터디 - 3 (13pg~18pg)
2025.05.18TransitionOptionsTransitionOptions는 이미지 로드 완료 시 적용되는 애니메이션을 설정하는 데 사용됩니다. 예를 들어, withCrossFade()를 사용하면 이미지가 부드럽게 전환됩니다. Q. withCrossFade()란 무엇인가요?이전 이미지가 서서히 사라지면서 새로운 이미지가 동시에 서서히 나타나는 애니메이션 효과를 의미합니다. 이러한 효과는 이미지 전환을 부드럽게 만들어 사용자 경험을 향상시킵니다. RequestBuilderRequestBuilder는 Glide에서 이미지 로드 요청을 구성하는 핵심 클래스입니다. asBitmap(), asDrawable(), asGif() 등을 사용하여 로드할 리소스의 타입을 지정할 수 있습니다. Q. RequestBuilder의 타입이..
Glide 공식 문서 읽기 스터디 - 2 (7pg~12pg)
Glide 공식 문서 읽기 스터디 - 2 (7pg~12pg)
2025.05.04생성된 APIGlide가 @GlideModule로부터 자동으로 만들어낸 클래스 (ex. GlideApp)GlideApp.with(fragment).load(myUrl).placeholder(R.drawable.placeholder).fitCenter().into(imageView); q. Glide로 쓰는 거랑 GlideApp으로 쓰는 거랑 사용하는 입장에서 어떤 효용의 차이가 있는 건지? Glide모든 설정을 명시적으로 지정해야 함커스텀 옵션 적용 시 .apply(...)를 반복 사용해야 해서 코드가 장황해질 수 있음 GlideApp자주 쓰는 옵션을 메서드처럼 재사용 가능타입에 따른 커스텀 메서드도 가능 (ex. .asMyImage()) GlideExtensionGlideExtension 어노테이션이..
Glide 공식 문서 읽기 스터디 - 1 (~7pg)
Glide 공식 문서 읽기 스터디 - 1 (~7pg)
2025.04.28Glide란? Glide는 Android용 오픈소스 이미지 로딩 라이브러리로, 다음과 같은 특징이 있다.비디오 스틸, 이미지, 애니메이션 GIF 등 다양한 미디어를 로드하고 디스플레이 가능기본적으로 커스텀된 HttpUrlConnection 사용하지만, OkHttp와의 연동도 지원이미지 리스트 스크롤이 부드럽게 작동하도록 최적화되어 있음Glide의 이미지 처리 최적화 전략 1. 이미지 디코딩이미지 디코딩이란?이미지 파일(JPEG, PNG 등)을 앱에서 사용할 수 있는 형태인 Bitmap 객체로 변환하는 과정을 말합니다.디코딩 속도는 앱의 반응성과 직결되기 때문에 매우 중요합니다. 2. 자동 다운 샘플링자동 다운 샘플링이란?Glide는 원본 이미지가 너무 클 경우, 화면에 필요한 해상도에 맞춰 이미지를 자동..