Pull to refresh

Comments 26

Насколько мне известно, правила App Store напрямую запрещают делать приложения, подгружающие код со стороны во время исполнения.

Там кода нет. Только разметка. Этакий аналог HTML, только с нативными виджетами вместо элементов. По сути это тонкий клиент с интерфейсом на нативных виджетах.

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

Судя по всему, многие читатели не поняли суть.
Disclaimer: я сам iOS-разработчик со стажем и не люблю ненатив, а даже немного побаиваюсь, что со временем останусь без работы из-за него :)
По делу:
Это не клиент. Это нативное приложение (фреймворк по сути), которое строит интерфейс исходя из конфигурации, которая хранится в JSON.
Все, однажды пришедшие, данные приложение может сохранить на девайсе и в дальнейшем ничего не мешает запускать в оффлайне. То, что тут в примере строго забиты данные для отображения, ни о чем не говорит. Ведь ничто не мешает вместо этого сделать конфигурацию для слоя работы с сетью — в JSON будет храниться информация, к каким эндпоинтам обращаться за данными.
Тут же можно дописывать кастомные элементы UI, которых не хватает.
Можно сделать обертку для работы с БД, которая также будет конфигурироваться из JSON.
В общем, полная свобода действий, но с оверхедом. Зато натив и кроссплатформа.
Окей, если это не клиент, а «полноценное приложение», поведайте, как на нём решить вот такую задачу (пример не из головы, я это дело в декабре лепил).
Есть база из полугигабайта вордовских документов с разбивкой по разделам и темам. Нужно сделать оффлайн-читалку, которая при наличии интернета выкачивает документы из выбранных разделов и тем, отслеживая при этом появление новых и обровлённых документов, позволяет их в дальнейшем читать В оффлайн режиме, а так же обеспечивает оффлайн полнотекстовый поиск по оным. Поиск не должен длиться часами (в моём случае он по полной базе искало секунды за полторы).

Если же использовать его для кроссплатформенного гуя к нормальному коду, то я не вижу никаких преимуществ перед решениями типа Xamarin.Forms, которые точно так же предоставляют переносимую декларативную разметку для нативных виджетов.
Я правильно понимаю, что можно сказать: «Поздравляю, вы только что изобрели XUL»?

XUL же мозилловцы вроде сами же и закопали после осознания его ненужности, нет?

Вот вот, я бы задумался б
Да, только, кажется, закопали в рамках стратегии по снижению количества пользователей Firefox.
Я бы скзал даже html в json нотации и специальный браузер для него

Я бы сказал: "Поздравляю, вы изобрели QML"

Статья состоит из маркетологического бреда чуть менее, чем полностью.

Во-первых, «это очень просто, потому что это JSON» — откровенная манипуляция. Как если бы для свободного разговора на английском достаточно было выучить 26 букв латинского алфавита.

Во-вторых, зачем мучать JSON и пытаться выразить на нем логику, если для этого гораздо лучше подходят классические ЯП? Я понимаю, когда для решения задачи выбирают самую неподходящую технологию в качестве эзотерического упражнения, но тут вроде как всё на полном серьезе.

В-третьих, есть же Ionic Framework, React Native, Apache Cordova на куда более известном наборе технологий — в чем преимущество перед ними?
UFO just landed and posted this here
UFO just landed and posted this here
Спасибо за статью! Для разработчиков бекенда — это просто независимость от всевозможных фронт-заморочек, не надо париться где найти толкового фронтиста, который выведит приложение собственно на экран. Остается скорректировать респонс в нужном формате и о чудо, REST-бек превращается в бек с фронтом!

А как с браузерной версией? Или я что то пропустил…
Остается скорректировать респонс в нужном формате и о чудо

Дьявол в деталях. Фронтенд, формально — это тоже всего лишь «респонс в нужном формате». И есть подозрение, что найти толкового фронтендера все-таки проще и быстрее.
Дьявол в деталях.

как же без этого — везде есть!

ключевое слово «независимость», даже пусть и от «толкового фронтендера»
Ничего подобного раньше не пробовал. Начал делать проектик — пока получается, значит порог вхождения невысокий. Скажите, какова максимальная длина текста для type:label?
Порог вхождения действительно невысокий, но чем дальше в лес тем больше дров, стандартные примеры пусть и уникальны в своем роде, но мало чем отличаются по дизайну. Для меня минусом стало то, что нельзя взаимодействовать с внутренним кодом (если это не так, то подскажите как это можно сделать). К примеру при парсинге сайта нужно как то воспроизводить ifame видео.
Еще немного огорчило что на тех же ios все смотрится куда красивее, но скорее всего это из-за моего древнего аппарата.

То есть это отказ от XML разметки и Java(в случае Android) логики в пользу Json разметки и Json логики? Выглядит очень круто для крайне узкого круга проектов. Я буквально не могу быстро придумать, где это может быть удобно. А вот для перевода HTML в натив может быть интересно.

Дело полезное!

В чём преимущество перед Cordova (помимо «фатального недостатка»)? В двух словах?
Невероятно! На самом деле я давно мечтал о кроссплатформенной разработке без зубодробильных обверток. А тут чистый JSON, казалось бы, как его можно усложнить?) Разве что названием узлов и уровнем вложенности. Но это уже дело совести.

И самый главный вопрос: поддерживаются только стандартные элементы и их кастомизация? И если имеется кастомизация, каким образом она осуществляется? Просто иногда имеется возможность использовать некоторые CSS, например. возможно ли это тут? И что с шаблонами? Можно ли порезать картинку в ФШ и натянуть ее спрайтами какими-нибудь?
Sign up to leave a comment.