Как стать автором
Обновить

Комментарии 23

Они перестали при установке bashrc ломать?
Скорее, React Native
Ну вот, пока приложения ограничиваются сложностью из примеров (Hello world и т.п.) — все работает отлично. Как только начинаются настоящие приложения — все летит к черту в том же Phonegap, Titanium и иже с ними, проверено сотни раз, уже сколько людей обломалось и вынуждено было платить повторно за нативную разработку.

Даже в iOS, самой адекватной платформе, нативным кодом не так просто сделать некоторые вещи — что уж говорить про оболочки. Да даже свифт родной глючит страшно. Когда уже перестанут двигать эту ерунду? Десктопные платформы существуют сколько десятков лет, и то пообщавшись с разработчиками под QT удивляешься сколько еще нерешенных проблем.
Никто не говорит, что это волшебная пилюля. Что это кнопка «Сделать все хорошо».
И никто не отрицает, что комбайн будет решать узко специализированную задачу хуже чем профильный инструмент. (Особенно, когда профильный не всегда корректно работает).
Поэтому не понимаю такую критику.

Предложен инструмент, который подходит для определенного класса задач, на вскидку:
  • черновой прототип;
  • простое приложение для собственных нужд или нужд узкого круга людей (семья, друзья и т.п.), к примеру для «умного» дома;
  • приложения, которым этого функционала реально достаточно.


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

  • в нативной разработке прототип обычно делается под первую платформу, например iOS, и делается черновыми средствами типа простейших контролов и сторибордов. Этого всегда хватает заказчику, чтобы пощупать функционал
  • простое приложение для умного дома обычно делается под одну платформу, и это обычно андроид, т.к. даже обеспеченные люди предпочитают ставить себе везде китайские планшеты за $100.
  • приложениям, для которых достаточно этого функционала, имхо, не место на маркете и в апсторе. Глубоко надеюсь, что эра фонариков и RSS-ридеров прошла в 2010-м.

Извините, если резко что-то написал — я злюсь не на вас, а на маркетологов и несведущих людей. Даже сегодня, занимаясь продуктовой разработкой, я часто слышу на кухне от тех же JS разработчиков — «ну все, хана вашему iOS, скоро придет NativeScript и вы станете не нужны». За последние 6 лет мне эти утверждения уже ужасно набили оскомину.
На самом деле мне кажется вы не совсем правы. Конец IOS разработчикам естественно не прийдет, но под React Native, допустим, достаточно качественных биндингов. Вещи, которые не получается сделать существующими средствами отправляются IOS разработчику, для создания биндингов и все.
А про заказчиков — это не грамотные заказчики, и такие есть в любой области, в том же вебе иногда требуется объяснить, что новомодный фреймворк/cms будет скорее мешать.
В любом проекте правильно остановиться и задуматься, какой набор технологий подходит именно здесь и сейчас, как заказчику, так и разработчику.
Примеры качественных приложений на JS вы, думаю, и так знаете. У facebook, судя по презентации приложения для фото и чата сделанны на React Native. Не помню какие именно, помню, что 2, и что они уже 2 года сущствуют.
Под React Native пока мало всего и его нет под Android, но это вопрос времени. На мой вкус именно React Native наиболее перспективный фреймворк.
Я понимаю вашу мысль, и согласен с доводами.

Но я всё равно за такие попытки сделать какую-нибудь библиотеку/фреймворк, который позволит использовать один код для ряда платформ. Да — с какими-то ограничениями и костылями, да — с проблемами.

Я сам js-разработчик и мне хочется попробовать что-то сделать на мобильных устройствах, но изучение стека технологий для мобильных платформ будет для меня огромной потерей времени.
Да ладно, я думаю вы сможете писать под iOS через неделю так же, как я на JS. Плохо, но для «попробовать что-то сделать» вполне приемлемо. У нас на самом деле нет такого стека, как у вас — у нас все гораздо проще.
НЛО прилетело и опубликовало эту надпись здесь
все правильно написал.
нужно приложение типа справочника. и зачем тут java нужна? html jquery mobile phonegap! и на самых убогих смартфонах отлично работает.
Расскажите, пожалуйста, в каком настоящем приложении у вас все полетело к черту? Спрашиваю без сарказма, реально интересно.
На моей памяти было:
— фитнес приложения у одной компании, писались на фрэймворке, работающем поверх Cocos2D — что-то вроде шагомеров и т.п. После года мучений решили все переписать и проклинают это время;
— детское приложение писали (и пишут наверное) на чем-то поверх флекса. На iOS идет еще более-менее (хотя выглядит не нативно), на андроиде просто жуть.
— мобильный банк на PhoneGap.
— социалка типа 4square;

Это так, навскидку. Не всё у меня конечно, привел примеры которые я знаю из первых рук. Как видите, обычные приложения, без 3д графики и особых требований к ресурсам — и даже они пролетают. Про что-то сложнее, например как мы писали для форекса, даже говорить не приходится — будет картинка слайд-шоу.
То есть основная проблема в производительности? Или в чем?
Да во всем. Производительность — в первую очередь, потом идет кроссплатформенность. Т.е. то, из-за чего собственно все и затеивалось, работает из рук вон плохо.
>> на андроиде просто жуть.

У Андроидов < 4.4 жутко кривой WebView, начиная с 4.4 по дефолту идет Chrome WebView, и все работает получше. Проблема ненативных средств разработки не в самих этих средствах, а в кривых эмуляторах жаваскрипта.
Я думаю, это все — ваши предрассудки. ReactNative — это больше похоже на Xamarin, чем на phonegap. Тем более мы помним, что когда то браузеры были не кроссплатформенные, а теперь они такие. И бизнес всегда ищет пути сэкономить, поэтому такие решения, как xamarin и react native все равно будут набирать популярность, хочется или нет. Можно сказать, что phonegap — это concept, тогда как xamarin и react native — вполне юзабельные вещи.
полтора года прошло, а воз и поныне там, а моя коллекция неудачных разработок на ненативных средствах типа ксамарина пополнилась еще десятком убитых проектов. Давайте зайдем в этот топик через 5 лет — бьюсь об заклад, ситуация будет та же.
А вы не рассматривали вариант, что вы просто не умеете их готовить? У нас например есть целый отдел Xamarin-щиков, делают себе спокойно деньги на этом и на жизнь не жалуются.
Интересно, если подружить с Метеором.
Делал на нем приложение. Очень сильно тормозит при запуске на платформе Art, так что не юзабельно
Да ладно там на запуске. Вообще весь процесс какой-то адово кривой. Эмулятор работает через раз, ошибки возвращают вообще не дебаживаемые, надо лезть в исходники и смотреть почему ж там, %!@#$, не запустилось. Хоть мне и понравилось на ноде писать, но отдебажить эту ошибку стоило н-ного количества месаджбоксов. Причем процесс компиляции очень долгий сам по себе, обещали к 1 версии исправить, но я плюнул и не стал дальше его мучить. Инструментов тоже никаких толком нет под него. А то что есть, телерик просит занести н-ную сумму денег к ним в кассу. При условии что все остальные «кроссплатформенные» обладают тем же набором детских болезней, не лучше уж взять Titanium, у которого хоть IDE есть (Appcelerator Studio IDE)? Или Xamarin (у них бесплатные контролы для платформ?)?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории