Назад к новостям для разработчиков

Встречи с разработчиками — разработка на React в Meta (Виталий Тополюк)

Эта статья написана Виталием Тополюком (Vitalii Topoliuk), разработчиком программного обеспечения (Meta), и Шоном Киганом (Sean Keegan), консультантом разработчиков (Meta).

Сегодня мы поговорим с Виталием Тополюком, разработчиком программного обеспечения из команды приложения Messenger для ПК в Meta. Команда Виталия работает над версией Messenger для ПК, с помощью которой вы можете обмениваться сообщениями, звонить и поддерживать связь непосредственно с компьютера.

Расскажите нам о себе.

Меня зовут Виталий Тополюк. Я разработчик ПО, моя команда работает над приложением Messenger для ПК. Мы разрабатываем версии Messenger для Windows и macOS уже три года, а последние два — с применением React Native.

Для чего используется React в Messenger для ПК?

Приложение основано на фреймворке React Native.

В каких других проектах Meta вы использовали React?

Messenger для ПК и связанные с ним проекты: Чат Workplace и Workrooms для ПК.

Почему ваша команда выбрала React? Как его использование помогает вашей команде достигать целей разработки?

Наше приложение создано на базе фреймворка Electron, который стал отличной отправной точкой. Однако мы быстро достигли предела возможностей Electron, и нам пришлось дополнительно инвестировать достаточно много средств, чтобы соответствовать требованиям по производительности, надежности и эффективности (PRE). Кроме того, функции приложения были ограничены Electron.

Чему вы особенно рады или чем гордитесь в последнее время?

Благодаря переходу на React Native нам удалось решить несколько проблем с производительностью, надежностью и эффективностью, а также сделать работу разработчиков значительно удобнее. React Native позволяет повторно использовать 80 % кодовой базы и улучшать метрики PRE. Вот лишь некоторые улучшения, которых мы достигли с переходом на React и без каких-либо дополнительных инвестиций в PRE по сравнению с приложением на Electron, при использовании которого нам приходилось заниматься улучшениями PRE в течение трех месяцев.

Приложение для Windows

Зона сбоев: –60 %

Коэффициент успешности начального запуска: 97 % (88 % для Electron)

Задержка начального запуска P90: –50 %

Размер двоичных данных: –80 %

Приложение для MacOS

Зона сбоев: +59 %

Коэффициент успешности начального запуска: 99 % (95 % для Electron)

Задержка начального запуска P90: –60 %

Размер двоичных данных: –70 %

Что вас особенно увлекает в разработке на React в такой компании, как Meta?

В Meta у нас есть возможность показать сообществу, как на React Native можно разрабатывать кросс-платформенные приложения для ПК.

Чего вы ожидаете в будущем от React?

Я надеюсь, что в будущем React Native заменит Electron. Однако для этого сначала необходимо улучшить этот фреймворк, чтобы он поддерживал больше комплексных инструментов разработки. Например, Electron не только служит оболочкой для веб-приложений, но и содержит инструменты для создания установщиков, средств автоматических обновлений, отчетов о сбоях и т. п.


Мы благодарим Виталия за интервью и уделенное нам время. Нам было интересно узнать, как React используется для улучшения крупных приложений и как мы в Meta учимся на своем опыте и вносим свой вклад в сообщество React. Надеемся, что вам тоже было интересно и теперь у вас есть некоторое представление о том, как и где используется React в Meta. Ожидайте новых выпусков блога, в которых мы встретимся с другими разработчиками Meta, чтобы узнать, что они думают на эту тему.

О серии интервью "Встречи с разработчиками — разработка на React в Meta"

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

Этот блог входит в нашу серию "Встречи с разработчиками", где мы беседуем с инженерами и разработчиками, регулярно использующими React, и приглашаем их поделиться своим опытом и рассказать нам о великолепных продуктах, которые они создают. Ожидайте новых выпусков блога, в которых мы встретимся с другими разработчиками, чтобы узнать, что они думают на эту тему.

Чтобы узнать больше о Meta Open Source, перейдите на наш сайт, посвященный открытому исходному коду, подпишитесь на наш YouTube-канал или следите за нами в Twitter, на Facebook и в LinkedIn.