Подтвердить что ты не робот

React Native vs Swift/Objective-C/Java-родной

Я работаю над новым проектом для компании Fintech, и мне было поручено изучить, следует ли нам идти с React Native или родным Swift/ Objective-C/Java для наших технологий разработки и разработки мобильных приложений.

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

Широкая функциональность приложения будет включать такие функции, как:

  • Функции, связанные с данными, такие как балансы счетов и заявления (довольно простые)
  • Захват изображений документов, удостоверяющих личность, и эгоистов пользователей
  • Захват биометрических данных
  • Push-уведомления

Некоторые из них довольно стандартны и просты, но некоторые из них потребуют от приложения использовать функции устройства низкого уровня и/или использовать сторонние Android и iOS SDK.

Итак, с точки зрения работы над решением мобильной стратегии развития, могу ли я попросить вас внести свой вклад, основываясь на вашем недавнем опыте, по причинам, связанным с рассмотрением React Native над родной Swift/ Objective-C/Java-разработкой в свет запланированных функций, перечисленных выше (включая причины, по которым может быть гораздо лучше придерживаться родных языков/платформ).

4b9b3361

Ответ 1

React Native имеет поистине приятную и заманчивую идею, напоминающую "унифицированную и почти полностью совместимую кодовую базу для разных платформ, включая Web". Но по моему опыту (не столь обширному, но все же) реальность немного отличается - в какой-то момент вы наверняка столкнетесь с некоторыми проблемами с собственным кодом, и было бы очень хорошо, если бы вы испытали Swift/ Objective-C/Java разработчиков в вашей команде, чтобы справиться с этим. Не доверяйте promises "все, что вам нужно, это просто разработчик с поддержкой React". Сама платформа React Native показалась мне более похожей на магический черный ящик, который я запускал с помощью одной команды, не имеющей представления о том, что внутри и как она работает. Вы должны знать хотя бы что-то о Xcode и Android Emulator, даже если Facebook пытается скрыть этот аспект от вас как можно больше.

TL; DR На мой взгляд, если вы действительно хотите попробовать React Native для чего-то более сложного, чем TodoMVC, тогда вам нужно иметь как минимум 3 разработчиков: Web (JavaScript/React), iOS (Swift/ Objective-C) и Android (Ява). Или просто один супергерой.

Ответ 2

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

Глядя на список функций, я не вижу ничего, что невозможно сделать в RN. Рано или поздно вам придется погрузиться в собственный код, как правило, для подключения собственных модулей с помощью JS. Я делал это несколько раз, это не так сложно, и документация на веб-сайте RN очень помогает.

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

Также я считаю, что это действительно зависит от того, какие устройства могут использовать потенциальные пользователи приложений. Я никогда не разрабатывал для Android, но слышал от других разработчиков, что на устройствах Android среднего уровня RN работает намного медленнее, это должно быть проверено с самого начала.