Команда Яндекса публиковала в открытом доступе DivKit — фреймворк, позволяющий ускорить разработку мобильных приложений и быстрее обновлять интерфейсы.
Исходный код DivKit опубликован на GitHub под открытой лицензией Apache 2.0. DivKit можно использовать в рамках подхода server driven UI, когда интерфейсом приложения управляют с сервера. Это позволяет менять интерфейс на лету, без обновления приложений. Разработчик просто описывает элементы в специальном формате на сервере, а фреймворк превращает это описание в элементы приложения — причём сразу для нескольких платформ. Разработчику не нужно писать код для каждой из них. DivKit поддерживает три основные платформы: Android, iOS и веб. С его помощью можно менять внешний вид компонентов или добавлять что-то новое: например, галерею или счётчик лайков.
Как отмечают разработчики, фреймворк удобен как для создания новых продуктов, так и для развития существующих. Он содержит библиотеки для разработки серверной части на Kotlin, TypeScript и Python. Интерфейсы на DivKit отличаются плавностью и быстродействием. Кроме того, фреймворк прост в применении — с ним можно познакомиться буквально за час-два.
Руководитель отдела мобильной разработки Илья Богин рассказал:
На разработку этого фреймворка у нас ушло пять лет. Он зародился в команде приложения Яндекс, а сейчас задействован во многих сервисах. На нём построен весь интерфейс главного экрана приложения Яндекс, его применяют в Едадиле, Маркете, Алисе, Яндекс ТВ и других сервисах. Теперь использовать и развивать этот инструмент могут все желающие.