Skip to content

Repository files navigation

Содержание

VK-Client

Приложение - клиент для работы с Вконтакте, проект пишется в рамках обучения в Geekbrains.
Проект учебный и в нём делается намного больше, чем даётся программой.

В программе есть ДЕМО РЕЖИМ, т.е. вам не обязательно авторизовываться через ВК апи, можно посмотреть с тестовыми данными.
изображение

Написан только кодом

В данной версии мессенджера не используется сториборд, а весь интерфейс написан кодом. Такого на курсе не было, обучился самостоятельно.

Cкриншоты

изображение изображение изображение изображение изображение изображение

Возможности

  • Авторизация через Webview вконтакте
    • Сохранение сессии авторизации
    • Использование авторизации для запросов API
    • Демо режим и демонстрация со статичными данными
  • Друзья
    • Отображение списка друзей
    • Поиск по списку друзей
    • Просмотр профиля и всех фото
    • Галерея фото
      • Не Коллекция
      • Анимируются UIView каруселью
      • Предзагрузка
      • Кеширование
  • Группы
    • Отображение групп пользователя
    • Поиск
      • Поиск по группам пользователя
      • Поиск новых групп
    • Вступление в группу
    • Выход из группы
  • Новости
    • Отображение новостей
    • Возможность лайкнуть
    • Скролл нескольких картинок
    • Показать полностью текст новости

Инструменты и технологии

  1. Используется архитектура MVVM + сервисы
  2. UIKit
  3. Persistent менеджер на базе Realm
  4. Менеджер кэша на базе NSCache
  5. Dependency Injection
  6. Assembly сервис, загружает разные модели в live и demo режимах
  7. GCD
  8. Operations
  9. Кастомные ячейки таблиц
  10. Кастомные ячейки коллекций
  11. UICollectionViewDiffableDataSource
  12. Composition Layout в коллекции новостей
  13. Infinite scroll + Pull to refresh в новостях
  14. Отдельные сервисы для загрузки данных
  15. Сохранение картинок в файловую систему с именем SHA256 от ссылки
  16. XCTest

и другое

About

Standalone app that works with Vkontakte API. Sturdy project by Denis Sizov.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages