JS fwdays conference — React, Vue, Node.js, Webpack plugins and more. Kyiv, March 14

Будущее React Native

Всем привет. Хочется разобраться в том, а какое будущее у React Native, у мобильной разработки в целом. Преимущества и недостатки. Какое будущее у мобильной разработки в целом? Стоит ли тратить время на react native, на react.js вакансий в разы больше.

Почему такой вопрос?
-вакансий не так уж много
-туториалов очень мало
-хочеться взвесить все "за"/"против"

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

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

писал на реакт найтив аппликуху для больниц с видеочатами с врачами, выбором куда заказать лекарство (то есть в какую аптеку) и кучей всякого разного — не было ни одного глюка — все летало

Для эталона возьмите телеграм — есть на все устройства, открывается, летает и работает практически мгновенно и никагого реактнейтива

он не на кьюте написан?

1) Очень много и спрос только растет.
2) Если интересны туториалы из разряда «...а напишите все за меня, я просто скопирую», то мало. А так в изобилии
3) Про минусы было сказано ниже. От себя скажу, можно и на натившине сделать УГ.

Рынок диктует свои условия, как по мне РН полноценно справляется со своими задачами.
Если гуглы не будут тормозить, флаттер хайпанет свое.
Для MVP скоро и дизайнером обойтись можно —> www.infragistics.com/design

Плюси:
— write once, run everywhere ©
— всі плюшки React та його екосистеми

Мінуси:
— судячи зі всього, ФБ добряче підзабив на РН
— проблеми з performance
— Javascript :)

write once, run everywhere

аххах, once. ну ок)

Будущего нет. Очередная раздутая хомяками истерия и маркетинг, рассчитанный на жадного и тупого клиента, которую ждет будущее ионика, кордовы, фонгапа и иже с ними.

А так, всё,что нужно знать о RN — это то, что новый скайп на нем написан. Худшая антиреклама.

новый скайп на нем написан

электрон жеж? тоже говно, вид сбоку

для мобілок — на реакті

аа. умно. выкинуть кьют и переписать все как минимум 2 раза

1. Вакансий очень много, в LinkedIn гораздо чаще пишут с вакансиями на RN.
2. Мало? Да ладно, очень много информации. Разумеется, половина из нее устарела, но все что нужно, ищется без проблем.
3. Отличный инструмент для MVP, но когда приложение становится большим и классным, то все равно надо многое переписывать на нативный код. Тот же UI набросать в разы быстрее, чем на iOS. Но когда речь заходит про pixel-perfect и про специфическую поддержку различных устройств, начинаются трудности. Есть определенные проблемы с производительностью, особенно когда используются нативные компоненты с активным бриджингом. Приходится всё бОльшие части компонентов выносить в натив. Многие 3rd party компоненты приходится форкать, так как PR могут висеть месяцами. Большой плюс — архитектура определена за тебя, не нужно каждый раз думать использовать MVC, MVVM или VIPER. И плюсов и минусов достаточно, но на RN можно сделать и хорошо и быстро. Но не в первый раз :)

У мобильной разработки будущее дайбоже. Но если стоит выбор между реактом и реакт нейтивом, то, очевидно, лучше реакт. Хотя, пацаны за бокалом смузи говорят, что реакт уже не тру, надо все на Vue.js переписывать.
А если интересна именно мобильная разработка, тогда лучше Java->Kotlin и/или Swift.

флаттер тогда уж (про кьют я не говорю, слишком сложно для большинства)

ааа. точно. тут про вакансии, а не технологии

Ну, если человеку интересна именно технология, он пойдет хелловорды делать, а не на доу спрашивать, можно ли ему её потрогать.

Не так давно Flutter анонсировали еще .

-вакансий не так уж много

Тому що для бізнесу не вигідно розробляти на ньому, тільки якщо в тебе щось простеньке типу онлайн магазу «бєз ізлішеств», або MVP. Все — що складніше, буде дуже дорого (бо потрібно підтримувати дві платформи, і з часом все обростає нереальною кількістю платформозалежного коду, а не кросс). Знаю, бо постійно це бачу в свої тусовці.
Він ще живе, бо якщо джиесеру скажуть зробити аплікуху на айОС, він не сяде вчити свіфт, а візьме реакт і швидко все зробить. Бо він знає джиес і це логічно обрати реакт. В більшості випадків, якщо юзати реакт тільки для написання під одну із платформ, то все може бути вдало.

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

я ж не мав на увазі прям тільки веб-магазин) а просто проекти на яких це не важливо.

Я чесно кажучи слабо собі уявляю що то за такі проекти де то не важливо. Для нас важливо, в нас ріал-тайм данні. Не в реакт частині звістно.

Значить реакт буде триматися на проектах схожих на ваш) Але от фейсбук написаний на ньому — ну це ж повна хрінь якшо чесно.

у мобильной разработки все хорошо, у реакт наив — так себе. до выхода очердного фремворка Х, убийцы фреймворка У, когда толпа веб девелоперов с блеяньем начинает изучать Х, поливаю гуаном У

React Native, у мобильной разработки в целом

React Native это гибридная разработка, не стоит путать его с нативной разработкой под мобайл.

-вакансий не так уж много
-туториалов очень мало

Потому что вещь достаточно нишевая.

руби тоже достаточно нишевый язык.

На него тоже вакансий не очень много.

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

p.s. у меня друг детства уже больше года пытается на руби устроиться, но всё никак

Да нормально все с этим. Друг вайтишник чтоли? В LinkedIn все время кто-то пишет, при том, что в профиле заголовок «не ищу работу».

друг не вайтишник, закончил data science, но мне сложно говорить за него — на его месте я бы через js кочевал на руби, а иначе будет тяжко в бек-энд напрямую запрыгнуть через руби или нет?

так это же хорошо, когда работа ищет тебя сама :)
помнится как оно раньше было, когда нужно было самому искать работу?)

помнится как оно раньше было, когда нужно было самому искать работу?

Мой экспириенс в этом плане несколько нерелевантен т.к. я из заставших доллар по 5 и интернет експлорер без табов.

Если другу горит вайти именно в руби — то советую ему сходить на какой-нить ивент типа ruby meditation и пообщаться там с народом, может кому нужен интерн. Рубисты — мирок достаточно тесный, многие друг друга знают и вакансии в открытый доступ выкладывают только если вообще никто из знакомых не ищет работу.

У меня комп с 5ти лет, но даже я не помню интернет эксплоурер без табов, видать совсем мелким был ещё ) правда хорошо помню, когда толком и поисковиков не было, а лазить мог только по тем сайтам, от которых знал домен или узнал от соседа :Р

Спасибо за фидбэк, очень приятно слышать человеческий совет, серьёзно
а не что-то вроде «да запарили эти вайтишники, идите курите поиск на форуме и гугл»

Жизнь — бумеранг, добро тоже возвращается ;)

IE7, в котором были табы, появился в конце 2006 года, поисковики тогда уже были какие угодно, видимо, вы о них просто не знали)

Проблема IE6 была в том, что у него было совсем плохо с поддержкой стандартов, + многие дефолтовые теги он рендерил, как хотел. Но главой проблемой было то, что пользователи обновляться не спешили. Кого-то все устраивало, кто-то вообще не понимал, что такое браузер и зачем его обновлять, кому-то корпоративная политика предусматривала 6ку и так далее. Соответственно, любая разработка велась с учётом поддержки этого говна, что несколько увеличивало градус гемора и количество человеко-часов :D

Существенное уменьшение доли IE6 началось только после 2010 года, когда фейсбук с гуглом потихоньку начали дропать его поддержку и выдавать пользователям ворнинги с предложением скачать нормальный браузер. Но в некоторых странах этот процесс затянулся. Последний раз мне пришлось править код для IE6 в 2012 году для клиента из Швейцарии. Для сравнения, для нормальных людей тогда уже писали на Backbone :D

Проблема IE6 была в том, что у него было совсем плохо с поддержкой стандартов

Нет, основной проблемой IE6 был refcounting для всех объектов в js, собрать неубиваемый сборщиком мусора цикл из объектов был сделать не просто легко, а очень легко. Собственно поэтому табов и не было — убивался инстанс и дело с концом.

Последний раз мне пришлось править код для IE6 в 2012 году для клиента из Швейцарии

В конце 2013ого апдейтили ActiveX контрол для IE6 и не только.

когда был ИЕ 6 он победил в войне и считал сам себя стандартом

Из этого и пошли все проблемы.

Сча хром начинает себя так же ввести понемногу

Будет ещё интереснее, когда мелкомягкие переведут IE. Останется хромой, зоопарк браузеров на движке хромого, сафари (почти что хромой) и несчастный FF на уровне статистической погрешности.

Было бы интереснее, перейди майкрософт на движок Firefox

доллар по 2, нетскейп навигатор, вин 3.1, десквйю, фидо на 2400 без коррекции, ббс, своя нода, ос2 2.1...

Эх молодёжь... СВМ ЕС. Доллар по 68 копеек.

ага. поди его купи по 68коп. на черном рынке стоил по 10

Это уже совсем под конец (1990). А так у фарцы 3...5.

Но если ты иностранец, и меняешь официально, то таки 68 копеек.

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

Вы сами себе противоречите: "

полноценное нативное приложение

" и "

можно подключать полноценный нативный код

".

Какой натив? Оно все равно юзает виртуальную машину js-скую. Производительность теряется, потребление оперативы увеличивается тоже.

потребление оперативы увеличивается тоже.

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

Але фейсбук і на 4х гігах тупить. Чого б це? це не реакт, нєєєєєєєє.....

Да пох вообще, чувак, пишите на своем реакт нейтив, а кто-то будет для него нативные модули — опенсорс-библиотеки создавать с бэкдорами, перехватывающие все запросы в сеть, пароли, имейлы, cvv-коды банковских карт и тд, а реактщики эти либы будут использовать.
JS-формошлеп даже если заглянет внутрь либы, то ничего не поймет, не шарит же в objective-c/swift/java/kotlin/c/c++, а нативщика позвать — дорого для бюджета проекта (в реалиях аутсорса).

а нативщика позвать — дорого для бюджета проекта

Сносный результат все равно дешевле выйдет у нативщиков.

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

То что оно не использует webkit для отрисовки ui — не значит что оно производительнее (на всех платформах).

Именно это и значит. Типичные приложения, сделанные на ReactNative, работают визуально намного быстрее, чем сделанные на PhoneGap и похожих технологиях. Я же не говорю, что это идеальный инструмент — я говорю о том, что оно вполне нормально работает, и для конечного юзера может вообще быть вообще незаметно в типичных задачах.

Ага, только потом кастомер захочет какую-то фичу, которую надо подключать через стороннюю либу, а в сторонней либе баг :D плавали, знаем. У гибридной разработки есть плюсы, но и минусов достаточно.

Подписаться на комментарии