Skip to content

flini1we/swiftCinemaApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

Movie Explorer

Описание

Movie Explorer — это iOS-приложение, которое позволяет пользователям просматривать список фильмов и получать детальную информацию о каждом из них, используя публичный API KudaGo. Приложение поддерживает анимации, локальное хранение данных и настройку пользовательских предпочтений.

Основные функции

  • Просмотр списка фильмов: Пользователи могут просматривать топ-10 фильмов и полный список фильмов.
  • Детальная информация о фильме: При нажатии на фильм открывается экран с детальной информацией, включая рейтинг, постер, заголовок, год выпуска, продолжительность, жанр, описание, актеров и трейлер.
  • Избранное: Пользователи могут добавлять фильмы в избранное и просматривать их в отдельном разделе.
  • Поиск: Поиск по названию фильмов, которые были загружены на главном экране.
  • Анимации: Приложение включает различные анимации для улучшения пользовательского опыта.
  • Локальное хранение данных: Используется Core Data для сохранения данных о фильмах и избранном.

Используемые технологии

  • Swift: Язык программирования.
  • UIKit: Фреймворк для создания пользовательского интерфейса.
  • URLSession: Для выполнения сетевых запросов.
  • Codable: Для парсинга JSON данных.
  • Core Data: Для локального хранения данных.
  • UIViewControllerTransitioningDelegate: Для настройки кастомных переходов между view controllers.
  • UIView.animate и UIViewPropertyAnimator: Для создания анимаций.

Архитектура приложения

Сетевые запросы

Для загрузки данных о фильмах используется публичный API KudaGo. Приложение выполняет асинхронные запросы с использованием URLSession и async/await. Данные парсятся с помощью протокола Codable.

API KudaGo

  • Список фильмов: https://kudago.com/public-api/v1.4/movies/
  • Детальная информация о фильме: https://kudago.com/public-api/v1.4/movies/{id}/
  • Список городов: https://kudago.com/public-api/v1.2/locations/?lang=ru

Локальное хранение данных

Приложение использует Core Data для сохранения данных о фильмах и избранном. Для автоматического обновления интерфейса при изменении данных используется NSFetchedResultsController.

Анимации

В приложении используются различные анимации для улучшения пользовательского опыта:

  • Анимация при нажатии на ячейку.
  • Анимационное открытие фильмов.
  • Анимация добавления в избранное.
  • Анимация отображения коллекции фильмов.

Установка и запуск

Требования

  • Xcode 13 или новее
  • iOS 14.0 или новее

Скриншоты

Simulator Screenshot - iPhone 16 - 2025-01-09 at 22 36 42

Simulator Screenshot - iPhone 16 - 2025-01-09 at 22 37 05

Simulator Screenshot - iPhone 16 - 2025-01-09 at 22 37 20

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages