Deep Dive Into VIPER
Стек: UIKit, Structured Concurrency, SOLID, SOA, XCTestCase, Kingfisher, Generics.
Изучи архитектурный паттерн VIPER на основе реального проекта. В рамках всего курса — 5 видео, ты изучишь и отточишь следующие навыки:
- Сетевой слой, который легко расширять на допольнительные запросы, будь это GET или POST, PUT и т.д. В заключительной пятой части мы дополним вторым запросом и убедимся, что сетей слой легко и без ошибок расширяется.
- Построим обращение к JSON при помощи Structured Concurrency. Познакомимся с Task, async / await и MainActor. Здесь мы не погружаемся в технический аспект Structured Concurrency, а лишь используем этот инструмент и немного поговорим про него.
- Пройдемся по SOLID принципам на основе реальных задач и реального кода. Посмотрим проявление SOLID в коде и как это происходит, какой код ухудшает и как, а так же отредачим его и посмотрим на бенефиты.
- VIPER модули: обработка ошибок, для чего это нужно и как их можно обработать. Разбиваем модуль на состояния: данные, ошибки, загрузка. Плотно проходимся по каждому слою, а так же детально и подробно поработаем с module input и module output, на основе production кейсов.
- Засетапим unit тестирование при помощи XCTestCase для нашего проекта и детально пройдемся по каждому тесту.
- Реализуем сервис для кеширования на основе UserDefaults, чтобы укрепить свои познания в SOA.
Почти 10 часов видео, да немного избыточно, но на скорости х2 и при помощи подрбных таймкодов ты вычшлинишь нужную для себя пользу на раз-два. Данный проект подходит от начального уровня и до уровня middle дальше рекомендую.
В конце каждого видео прикрепляю: итоговый проект, презентацию из excalidraw. Я настоятельно рекомендую тебе, не просто слушать, а разбираться в том, что происходит в воркшопах. Тебе будет достаточно на каждом этапе воркшопа разобраться в ходе видео и если необходимо в проекте: потыкать учатски кода, подебажить его.
В четвёртом проекте дополни мои тесты от себя одним или двумя тестами, а в пятом воркшопе дополни один запрос и сделай дополнительный модуль, чтобы точно разобраться в теории и закрепить её на практике!
Так же буду рад, если не затруднит, то проставить лайк если понравился воркшоп, их всего 5 штук. Если есть фидбек: позитивный или негативный или нейтральный, то можете смело оставлять его под постами или писать в ЛС, чтобы я мог принимать его для улучшения будущего контента, спасибо! 👍