Что такое Cache

«Что такое Cache» — вопрос из категории Алгоритмы и структуры данных, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Кэш — это временное хранилище данных, ускоряющее доступ к часто используемой информации. В Android кэширование применяется для изображений, сетевых запросов, данных БД и т.д.

Пример кэширования изображений с Glide:

Glide.with(context)
    .load(imageUrl)
    .diskCacheStrategy(DiskCacheStrategy.ALL) // Кэширование на диске
    .memoryPolicy(MemoryPolicy.NO_CACHE) // Настройка кэша в памяти
    .into(imageView)

Типы кэша:

  • Memory Cache — быстрый, но очищается при закрытии приложения
  • Disk Cache — сохраняется между запусками
  • Network Cache — кэширование HTTP-ответов (OkHttp, Retrofit)

Кэш требует управления: очистки при нехватке места, инвалидации при изменении данных.