Архитектура умного фото-редактора

RU / День 2 / 14:00 / Зал 1

В сфере компьютерного зрения и машинного обучения традиционно не очень принято беспокоиться о качестве кода. В большинстве случаев имплементация подавляющей части алгоритмов не требует построения высокой иерархии абстракции. С развитием продукта Lensa пришлось пересмотреть и придумать несколько подходов, которые позволяют хоть как-то координировать работу многочисленных технологий внутри приложения так, чтобы это было легко поддерживаемо, декомпозируемо, а главное, не создавало необходимости в компромиссах в вопросах производительности.

В докладе Андрей расскажет, как в одном приложении уживаются UIKit, Metal, Accelerate, CoreML, Vision, ARKit, ARM NEON и код на 5 языках, включая ассемблер. Вы услышите о том, как разработчики заставили это всё работать, как обвесили это продуктовыми задачами вроде баз данных или встроенных покупок, узнаете об особенностях тестирования, проведения A/B тестов и многом другом.