Pull to refresh

Comments 38

а почему не рассматривается кроссплатформенная разработка, а только гибридная на веб технологиях?
Это отдельная большая тема. Но рассказать об опыте Яндекса в этом — хорошая идея. Попробуем!
Так ведь в Facebook сейчас React Native используют. Разве это не разновидность кроссплатформенной разработки?
Как я понял, Facebook разрабатывает React Native и использует его в своих приложениях, но они не целиком написаны на React Native.
React Native Showcase
Многие забывают, что React Native это технология, предназначенная для организации композиции нативных UI-элементов. И это иногда даёт overhead на разработчиков больше, чем при разработке гибридных. Ибо там они вольны ваять красоту без ограничений и сверстать могут любой макет, и лишь при обращении к устройству им нужен нативный код. А вот задание сверстать согласованый макет на React Native порой несёт сюрпризы.

Брешут. Вот только на днях заопенсорсили либу для натива, довольно серьезную, которую используют для многопоточного рендеринга карточек в ленте. На реакте производительности не хватит в принципе.

Вполне можно делать такую резину, которая и на маленьком экране не выпирает и на большом не выглядит по дебильному мобильному. Например: http://mol.js.org/app/supplies/

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



UPD Затупил, логин-то не нужен. Но все равно, странно экран выглядит на большом монике.
Нормально выглядит. Но с производительностью на слабых мобильниках беда

Вы про анимацию, задержку между переходами или скроллинг?

Между нажатием на карточку товара и открытием полной информации около секунды полного фриза. Firexox на Xperia xa, 6.0.

Да, мобильный FF далеко не самый быстрый браузер. Попробуйте Хромушк.

Ага вы это всем пользователям будете рассказывать?

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

UFO just landed and posted this here

А чем вы это запрещаете?

UFO just landed and posted this here
UFO just landed and posted this here

А как она называется или где её найти?

UFO just landed and posted this here
UFO just landed and posted this here
Антон, а можете прислать модель вашего устройства? Я передам разработке.
UFO just landed and posted this here
Нет, конечно, не из вежливости. Хорошо работать в наших же интересах. Напишу!
ведровому юзеру ведровые приложения.
на iOS всё как часы
UFO just landed and posted this here
А Вы случайно не думали написать какое нибудь руководство для обучающихся у вас и доступное всем остальным?
Это привлечение ценных кадров. Все же любят учиться — так учитесь, работая на Яндекс!
Судя по всему под гибридным подходом имеется именно PhoneGap/Cordova. Было бы интересно есть ли реальный опыт использования js + native views например: react native, titanium appcelerator или nativescript. Странно, что обошли эту тему стороной
такого опыта не так много, т.к. в большинстве случаев мы используем или полностью нативные или html+css+js технологии

Обзор не серьезный. Много воды и не о чем.


Сейчас есть проекты crosswalk, wk-webview, ionic2, которые вывели гибридную разработку совсем на другой уровень. (Не вижу упоминания об этом)


А если вам нужна 3д анимация и прочие рил-тайм штучки, пожалуйста, пишите нативный плагин и продолжайте разработку на веб технологиях. Тогда вам не нужно в штат 3 девелопера нативщика. Можно использовать фриланс, аутсорс или 1 адекватного программиста, который напишет нужный плагин когда это потребуется.

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


crosswalk и ionic2, это конкретные способы разрабатывать на платформе Cordova, а wk-webview подразумевается, в том числе, когда мы говорим о кастомных гибридных архитектурах


подробнее про это и про то, какие части можно делать в виде нативных плагинов, мы говорим на самой Школе Разработки Интерфейсов (https://academy.yandex.ru/events/frontend/shri_msk-2017/)

На самом деле чистое веб-приложение сейчас не сделать.

Сделать


Веб-вью все равно нужно положить внутрь iOS или Android-приложения, то есть в любом случае нужен контейнер, который написан с помощью Java, Swift или Objective-C.

Не нужен.


Есть такая штука — прогрессивные веб-приложения (progressive web apps, PWA) и WebAPK. Советую почитать, что это такое.


Поэтому на вопрос


Натив или гибрид?

ответ будет — прогрессив.


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

Так и количество различных зарекомендовавших себя макетов интерфейса (layouts), используемых в современных приложениях, тоже не бесконечно. Есть готовые решения, например: https://polymerelements.github.io/app-layout/


Кроме того, встает вопрос, хотите ли вы трижды рисовать разный дизайн для каждого приложения. Ведь гайдлайны операционных систем сильно отличаются друг от друга, и как лебедь, рак и щука двигаются в разные стороны в мелочах. Если внимательно прочитать гайды Windows Phone, Android и iOS, то окажется, что нужно хорошо продумать, как ваша пользовательская задача будет оптимально решаться на каждой из платформ.

Есть Material Design, который является кроссплатформенным: https://material.io/guidelines/platforms/

Кратко:
— если нужны вычислительные ресурсы = натив
— если отображение текстовой информации + немного графики = гибрид
Андроид-разработчикам я бы рекомендовал держаться от любых web view подальше, если не хотите быть заблокированными в Google Play за нарушение Spam provision of the Content Policy:

Do not post an app where the primary functionality is to provide a web view of a website not owned or administered by you (unless you have permission from the website owner/administrator to do so)

И пусть вас не смущает уточнение в скобках — мне известно уже два приложения, заблокированных за показ OAuth-страницы в web view.
И пусть вас не смущает уточнение в скобках — мне известно уже два приложения, заблокированных за показ OAuth-страницы в web view.

Без подробностей, выглядит как вброс. Кого именно заблокировали, с каким комментарием, и т.д.
Гугл последнее время стал пристальное внимание уделять используемым логотипам и брендам: требуют подтверждающего письма что вам разрешили использовать бренд, заказали это приложение.
>> показ OAuth-страницы в web view.
а если страницы в chrome tabs?
Sign up to leave a comment.