Что ж, этот день настал

За прошлую неделю сразу два разных заказчика сами спрашивали про кроссплатформенную разработку и довольно активно интересовались отличиями React Native от нативной и гибридной разработки. Сегодня мы расскажем подробнее, чем крут React Native и как он позволяет потратить в 1,5-2 раза меньше денег на программирование мобильных приложений.

Не будет ли тормозить?

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

Ответ однозначный: приложение будет работать абсолютно также, как любое нативное. Вы не сможете отличить приложение на React Native от обычного, если разработчик вам не скажет сам. Это связано с тем, что на самом деле все компоненты используются «родные» от своих платформ, а реакт используется в основном для организации логики.

Ниже вы увидите видео-запись одного из наших приложений. Это личный кабинет одного из крупнейших телеком-операторов.

Сам разработчик? Заработаешь ещё больше!

Если вы сами разработчик, то технология позволит вам делать в 1,5-2 раза больше приложений за то же время. То есть, при фиксированной оплате за проект, вы будете зарабатывать в 1,5-2 раза больше.

Сначала я расскажу немного вводной информации об альтернативах RN, которые мы успели попробовать и изучить, перед тем как окончательно перешли на React Native. Далее будут описаны все плюсы и минусы технологии (с точки зрения заказчика и руководителя разработки). А напоследок для самых любопытных открою секрет, как всё работает «изнутри».

Технология появилась в 2015 году в компании Facebook и быстро завоевала популярность. Уже в 2016 мы полностью перешли на неё и за три года работы ни разу не пожалели. Однако, выбор был сделан не сразу. Мы успели проработать и изучить различные альтернативы, которые встречались на рынке мобильной разработки в период с 2010 по 2016 год.

Первые кроссплатформенные приложения

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

Даже так: первые приложения как раз были веб-страничками, которые открывались в браузере, но Apple и Google от этой практики отказались, т.к. работало всё не очень.

До 2012 года мы вели разработку сайтов и сложных веб-приложений на Adobe Flash и первые наши мобильные приложения также были на Adobe Flash (сейчас это Animate). Он позволяет делать покадровую анимацию на временной шкале и делать из этого приложения под две платформы. Для презентаций это было очень удобно, однако было два существенных минуса:

  • Всё тормозило и не было таких приятных ощущений, как от использования нативных приложений;
  • У Flash не было никаких готовых красивых элементов интерфейса и всё требовалось рисовать с нуля. Это отнимало много времени и средств и сводило на нет всю экономию от общего кода для двух платформ.

Однако, не смотря на эти минусы, игровые компании ещё долго продолжали использовать Adobe Flash / Adobe Animate для создания игр, т.к. у этой платформы появилось аппаратное 3д-ускорение, которое при огромном количестве дополнительных усилий позволяло получать действительно плавную анимацию на мобильных устройствах.

Похожим образом работает также платформа Unity. Далее мы расскажем ещё об одной интересной альтернативе, а потом подробно опишем все плюсы и минусы React Native.

Продолжение статьи

Понравилось? Поделись с друзьями в соцсетях!

You might also like