«Яндекс» выложил в открытый доступ DivKit — инструмент для ускорения разработки мобильных приложений

Компания использует его, например, в «Едадиле», «Маркете», «Алисе» и других сервисах.

  • Исходный код DivKit компания опубликовала на GitHub под открытой лицензией Apache 2.0. Фреймворк позволяет ускорить разработку мобильных приложений и быстрее обновлять интерфейсы.
  • «DivKit можно использовать в рамках подхода server driven UI, когда интерфейсом приложения управляют с сервера. Это позволяет менять интерфейс на лету, без обновления приложений. Разработчик просто описывает элементы в специальном формате на сервере, а фреймворк превращает это описание в элементы приложения — причём сразу для нескольких платформ. Разработчику не нужно писать код для каждой из них», — отмечают в «Яндексе».

  • Инструмент поддерживает Android, iOS и веб. С его помощью можно менять внешний вид компонентов или добавлять что-то новое: например, галерею или счётчик лайков.
  • DivKit подходит для создания новых продуктов и развития существующих. Фреймворк содержит библиотеки для разработки серверной части на Kotlin, TypeScript и Python. По данным «Яндекса», познакомиться с ним можно «за час-два».

На разработку этого фреймворка у нас ушло пять лет. Он зародился в команде приложения «Яндекс», а сейчас задействован во многих сервисах. На нём построен весь интерфейс главного экрана приложения «Яндекс», его применяют в «Едадиле», «Маркете», «Алисе», «Яндекс ТВ» и других сервисах. Теперь использовать и развивать этот инструмент могут все желающие.

Илья Богин, руководитель отдела мобильной разработки

193
172 комментария

Это из-за него их приложения так тормозят на смартфонах?

107
Ответить

Не тормозят, а дают время пользователю обдумать его действия.

59
Ответить

Поддерживаю. На «старых» айфонах (6s, 7) приложениями Яндекса просто невозможно пользоваться без приступов ярости.

35
Ответить

Комментарий недоступен

17
Ответить

конкретно эта штука, наоборот, быстрее альтернативы - встраивать для показа простых карточек полноценный браузер (webview)

по сути задача этого DivKit - показывать простые дизайны, получая верстку с сервера в виде текстового файла. Эта задача решается тем, что текстовый файл парсится и переводится в набор нативных элементов. При всей сложности задачи, это намного эффективнее чем просто забубенить WebView и кормить ее тяжелыми современными html-страницами.

4
Ответить

Очень здорово, что мы живем в таком мире, где сильно развивается ИТ сфера. Мы переходим в будущее,ребят) А еще некоторые компании, когда нашли решение какой-то своей проблемы. Потратили много времени,ресурсов...и просто дают остальным, чтоб другие тоже могли развиваться. Я считаю, чисто по-человечески, это очень здорово. Так и строятся бренды. Это компании, которые ведут нас в будущее и всем остальным помогают шагнуть в будущее

32
Ответить

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

45
Ответить