«Яндекс» выложил в открытый доступ Yatagan — инструмент для быстрой сборки Android-приложений

Сначала компания использовала его для своих целей. Например, ускорила разработку приложения «Браузера» в два раза.

  • «Яндекс» выложил на GitHub фреймворк Yatagan. Он автоматически генерирует код, который связывает между собой части приложения. Например, в «Браузере» он объединяет модули распознавания речи, «Алисы», перевода видео и всё остальное.
  • Yatagan можно использовать вместо фреймворка Dagger — он задействует API Dagger, но генерирует меньше кода и этим сокращает время сборки.
  • В Yatagan есть специальный режим для разработчиков, который связывает модули без генерации кода, — он незначительно замедляет запуск приложения, но сильно ускоряет сборку.

Изначально мы создавали Yatagan для своих целей. Перед нами стояла задача ускорить сборку таких приложений, как «Браузер» или «Яндекс с Алисой». Тогда мы изучили особенности работы Dagger и на его основе сделали свой фреймворк. В итоге нам удалось вдвое ускорить сборку. Это не значит, что все получат такой же результат: скорость сборки зависит от многих факторов. По нашим оценкам, в среднем она может вырасти на 40–50% — причём не только в таких больших приложениях, как »Браузер».

Илья Богин, руководитель отдела мобильной разработки «Яндекса»
  • В августе 2022 года «Яндекс» опубликовал на GitHub фреймворк DivKit, который позволяет ускорить разработку мобильных приложений и быстрее обновлять интерфейсы.
5555
97 комментариев

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

51

Для очень больших графов построение во время выполнения может замедлять старт приложения на несколько секунд, но обычно это не критично по сравнению с ускорением сборки.

Как всегда гении. Им важнее всего чтоб у них в продакшн быстрее хуякалось, а то что у юзеров тормозит и жрёт батарею - так это ерунда.

41

Да ладно вам, все нормально работает. Просто некторым хоть что дай, если наше, то значит обязательно плохое.

36

Опередил. Маркет - это удивительный апп, который по несколько раз на дню предлагает обновиться, но все равно тормозит, а потом вылетает и просит отправить отчёт
Для сравнения Озон, который не крашится почти никогда и работает шустро почти на любом железе

17

Поддерживаю ,что ни возьми - кусок дерьма наполовину сделанный

14

Тормозит оно ещё потому что они с сервера передают все данные для построения UI.

7

Не знаю как на айфоне, но на андроиде начиная с 9 и по 13 (дома устройства со всеми есть) работает без серьёзных нареканий.

5